На этом шаге мы рассмотрим пример программы, где используются объекты.
Далее мы все, что было описано на предыдущих шагах, используем на практике. В программе описывается класс MyClass, в котором есть два поля (целочисленное number и символьное symbol), а также метод show(), которым отображаются значения полей. В главном методе программы на основе класса MyClass создается два объекта (А и В), полям объектов присваиваются значения, а с помощью метода show() значения полей объектов выводятся в консольное окно. Соответствующая программа приведена ниже.
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace pr81_1 { // Описание класса: class MyClass { // Целочисленное поле: public int number; // Символьное поле: public char symbol; // Метод: public void show(){ // Отображение значения целочисленного поля: Console.WriteLine("Целочисленное поле: " + number); // Отображение значения символьного поля: Console.WriteLine("Символьное поле: " + symbol); } } // Класс с главным методом: class Program { // Главный метод: static void Main() { // Первый объект: MyClass A = new MyClass(); // Объектная переменная: MyClass B; // Второй объект: B = new MyClass(); // Присваивание значений полям первого объекта: A.number = 123; A.symbol = 'А'; // Присваивание значений полям второго объекта: B.number = 321; B.symbol = 'B'; // Вызов методов: Console.WriteLine("Первый объект"); A.show(); Console.WriteLine("Второй объект"); B.show(); // Задержка: Console.ReadLine(); } } }
Результат выполнения программы такой.
Рис.1. Результат выполнения программы
В программе, кроме класса с главным метолом программы, описан еще и класс MyClass. В методе Main() создаются объекты этого класса. Их всего два. Первый объект создается командой
MyClass A = new MyClass(); .
В данном случае объявляется объектная переменная А класса MyClass и ей значением присваивается ссылка на объект, который создается инструкцией new MyClass(). Со вторым объектом ситуация немного иная. Сначала командой
MyClass B;
B = new MyClass(); .
После того как объекты А и В созданы, их полям присваиваются значения. Значения полям объекта А присваиваем командами
A.number = 123;
A.symbol = 'А'; .
Полям объекта В значения присваиваются с помощью команд
B.number = 321;
B.symbol = 'B'; .
Для проверки значений полей объектов А и В используем соответственно команды
A.show();
B.show(); .
Этими командами из объектов А и В вызывается метод show(). В классе MyClass метод описан таким образом, что им в консольное окно выводятся значения полей number и symbol. Объект, к которому относятся эти поля, в описании метода в классе MyClass явно не указан. В таком случае подразумеваются поля того объекта, из которого вызывается метод. Это и происходит на практике: при вызове метода show() из объекта А отображаются значения полей объекта А, а при вызове метода show() из объекта В отображаются значения поле объекта В.
На следующем шаге мы закончим изучение этого вопроса.