Console.WriteLine ("это недоступный код");
}
В данном примере возврат из методаMyMeth() всегда происходит до выполнения последнего оператора, содержащего вызов методаWriteLine().Если попытаться скомпилировать этот код, то будет выдано предупреждающее сообщение. Вообще‘говоря, недоступный код считается ошибкой программирования, и поэтому предупреждения о таком коде следует воспринимать всерьез.
Конструкторы
В приведенных выше примерах программ переменные экземпляра каждого объекта типаBuildingприходилось инициализировать вручную, используя, в частности, следующую последовательность операторов.
house.Occupants = 4; house.Area = 2500; house.Floors = 2;
Такой прием обычно не применяется в профессионально написанном коде С#. Кроме того, он чреват ошибками (вы можете просто забыть инициализировать одно из полей). Впрочем, существует лучший способ решить подобную задачу: воспользоваться конструктором^
// тело конструктора
}
^ Как правило, конструктор используется для задания первоначальных значений переменных экземпляра, определенных в классе, или же для выполнения любых других установочных процедур, которые требуются для создания полностью сформированного объекта. Кроме того,
У всех классов имеются конструкторы, независимо от того, определите вы их или нет, поскольку в C# автоматически предоставляется конструктор, используемый по умолчанию и инициализирующий все переменные экземпляра их значениями по умолчанию. Для большинства типов данных значением по умолчанию является нулевое, для типа bool — значение false, а для ссылочных типов — пустое значение. Но как только вы определите свой собственный конструктор, то конструктор по умолчанию больше не используется.
Ниже приведен простой пример применения конструктора.
// Простой конструктор.
using System;
class MyClass { public int x;
public MyClass() {
x = 10;
}
}
class ConsDemo {
static void Main() {
MyClass tl = new MyClass();
MyClass t2 = new MyClass();
Console.WriteLine(tl,x + " " + t2.x);
}
}
В данном примере конструктор класса MyClass имеет следующий вид.
public MyClassO {
X =10;
}