C# Get/Set Syntax Usage

Assuming you have access to them (the properties you’ve declared are protected), you use them like this:

Person tom = new Person();
tom.Title = "A title";
string hisTitle = tom.Title;

These are properties. They’re basically pairs of getter/setter methods (although you can have just a getter, or just a setter) with appropriate metadata. The example you’ve given is of automatically implemented properties where the compiler is adding a backing field. You can write the code yourself though. For example, the Title property you’ve declared is like this:

private string title; // Backing field
protected string Title
{
    get { return title; }  // Getter
    set { title = value; } // Setter
}

… except that the backing field is given an “unspeakable name” – one you can’t refer to in your C# code. You’re forced to go through the property itself.

You can make one part of a property more restricted than another. For example, this is quite common:

private string foo;
public string Foo
{
    get { return foo; }
    private set { foo = value; }
}

or as an automatically implemented property:

public string Foo { get; private set; }

Here the “getter” is public but the “setter” is private.

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)