Основы объектно-ориентированного программирования на языке C# book | Page 122

7 Класи Для демонстрацiı̈ цих правил розглянемо такий приклад: using System; namespace TestStaticNonStaticInitialization { public class TestStaticNonStaticInitialization { public TestStaticNonStaticInitialization() { Console.WriteLine("Call NonStatic Constructor"); Console.WriteLine("x=" + x); Console.WriteLine("y=" + y); } static TestStaticNonStaticInitialization() { Console.WriteLine("Call Static Constructor"); } static int InitValue(string message) { Console.WriteLine(message); return 100; } public static void StaticMethod() { Console.WriteLine("Call Static Method"); } private int y = InitValue("Initialization of NonStatic value y"); private int x = InitValue("Initialization of NonStatic value x"); public static int a = InitValue("Initialization of Static value a" ); public static int b = InitValue("Initialization of Static value b" ); } class Program { static void Main(string [] arg) { Console.WriteLine("Main"); TestStaticNonStaticInitialization.StaticMethod(); Console.WriteLine("Create instance #1"); TestStaticNonStaticInitialization N1incance = new TestStaticNonStaticInitialization(); Console.WriteLine("Create instance #2"); TestStaticNonStaticInitialization N2incance = new TestStaticNonStaticInitialization(); } } } Пiсля запуску програми на екранi буде надруковано: Main Initialization of Static value a Initialization of Static value b Call Static Constructor Call Static Method Create instance #1 122