I\'m failing to understand what the difference is between initializing a variable, getting its value like this:
//define a local variable.
int i;
i=
The part confusing me was the terms accessor, mutator and property, along with the { get; set; }, as though it's some magical improvement alias over just making the field public.
private field (in C#, both getter/setter)private field (just a setter)accessor in C#.Purely as:
private int myNumber;
public int MyNumber { get; set; }
they are totally useless, serving as noise code version for:
public int myNumber;
If, however you add some checks like so:
private int myNumber;
public int MyNumber
{
get
{
return myNumber;
}
set
{
if (myNumber < 0)
throw new ArgumentOutOfRangeException;
myNumber = value;
}
}
..then they do actually serve the regular used-to getter/setter purpose.