Ниже приведен один из полезных примеров применения оператораgotoдля выхода из глубоко вложенной части программы.
// Продемонстрировать практическое применение оператора goto.
using System;
class Use_goto {
static void Main { int i=0, j=0, k=0;
for(i=0; i < 10; i++) {
for(j=0; j < 10; j++ ) { for(k=0; k < 10; k++) {
Console.WriteLine ("i, j, k: " + i + " " + j +
" " + k) ; if(k == 3) goto stop;
}
}
}
stop:
Console.WriteLine("Остановлено! i, j, k: " + i + ", " + j + " " + k) ;
}
}
Выполнение этой программы дает следующий результат.
i, j, k: ООО
Остановлено! i, j, k: 0, 0 3
Если бы не оператор goto, то в приведенной выше программе пришлось бы прибегнуть к трем операторам if и break, чтобы выйти из глубоко вложенной части этой программы. В данном случае оператор goto действительно упрощает код. И хотя приведенный выше пример служит лишь для демонстрации применения оператора goto, вполне возможны ситуации, в которых этот оператор может на самом деле оказаться полезным.
И последнее замечание: как следует из приведенного выше примера, из кодового блока можно выйти непосредственно, но войти в него так же непосредственно нельзя.
ГЛАВА 6 Введение в классы, объекты и методы
Эта глава служит введением в классы. Класс составляет основу языка С#, поскольку он определяет характер объекта. Кроме того, класс служит основанием для объектно-ориентированного программирования (ООП).
В пределах класса определяются данные и код. А поскольку классы и объекты относятся к основополагающим элементам С#, то для их рассмотрения требуется не одна глава книги. В данной главе рассмотрение классов и объектов начинается с их главных особенностей.
Основные положения о классах
Классы использовались в примерах программ с самого начала этой книги. Разумеется, это были лишь самые простые классы, что не позволяло выгодно воспользоваться большинством их возможностей. На самом же деле классы намного более эффективны, чем это следует из приведенных ранее примеров их ограниченного применения.
Начнем рассмотрение классов с основных положений.