C# Classes and Properties
A class bundles data and the methods that work on it. A property such as Value looks like a field to callers but is really a pair of accessors. Declaring set as private means outside code can read Value but cannot assign it.
C#
using System;
class Counter {
public int Value { get; private set; }
public void Increment() {
Value++;
}
}
class Program {
static void Main() {
var counter = new Counter();
counter.Increment();
counter.Increment();
Console.WriteLine(counter.Value);
}
}