You can initialize accessible fields or properties via an object initializer.
For example, consider the following class:
class Person { public string Name; public bool CanSpeakJava; public bool CanSpeakCSharp; public Person () {} public Person (string n) { Name = n; } }
Using object initializers, you can instantiate Person objects as follows:
parameterless constructors can omit empty parentheses
Person b1 = new Person { Name="Bo", CanSpeakJava=true, CanSpeakCSharp=false }; Person b2 = new Person ("Bo"){ CanSpeakJava=true, CanSpeakCSharp=false };
using System; class MainClass//from w ww .j a va 2 s . c o m { public static void Main(string[] args) { Person b1 = new Person { Name="Bo", CanSpeakJava=true, CanSpeakCSharp=false }; Person b2 = new Person ("Bo"){ CanSpeakJava=true, CanSpeakCSharp=false }; Console.WriteLine(b2.Name); Console.WriteLine(b2.CanSpeakJava); Console.WriteLine(b2.CanSpeakCSharp); } } class Person { public string Name; public bool CanSpeakJava; public bool CanSpeakCSharp; public Person () {} public Person (string n) { Name = n; } }