access to a private field through a property

image_pdfimage_print

/*
C# Programming Tips & Techniques
by Charles Wright, Kris Jamsa

Publisher: Osborne/McGraw-Hill (December 28, 2001)
ISBN: 0072193794
*/
//
// Property.cs — Demonstrates access to a private field through a property.
// Compile this program with the following command line:
// C:>csc Property.cs
//
namespace nsProperty
{
using System;
public class Property
{
const double radian = 57.29578;
const double pi = 3.14159;
int Angle
{
get
{
int angle = (int) (fAngle * radian + 0.5);
angle = angle == 360 ? 0 : angle;
return (angle);
}
set
{
double angle = (double) value / radian;
if (angle < (2 * pi)) { fAngle = angle; Console.WriteLine ("fAngle set to {0,0:F5}", fAngle); } else { Console.WriteLine ("fAngle not modified"); } } } double fAngle = 0.0; // Angle in radians static public int Main (string [] args) { int angle; try { angle = int.Parse (args[0]); } catch (IndexOutOfRangeException) { Console.WriteLine ("usage: circle [angle in degrees]"); return (-1); } catch (FormatException) { Console.WriteLine ("Please use a number value for the angle in degrees"); return (-1); } Property main = new Property(); main.Angle = angle; Console.WriteLine ("The angle is {0} degrees", main.Angle); return (0); } } } [/csharp]