Конструкторы с параметрами
В конструктор можно включить параметры. Приведем пример класса с двумя различными
конструкторами:
class Person
{
// Поля
string firstName;
string lastName;
// Первый метод-конструктор
public Person()
{
firstName = “Johnny”;
lastName = “Rocket”;
44
Часть 2
}
// Второй метод-конструктор
public Person(string f, string l)
{
this.firstName = f;
this.lastName = l;
}
}
Таким образом, мы получили
два разных способа конструирования объекта.
Например, этот:
Person p = new Person();
В таком случае в поле
p.lastName
будет автоматически подставлено значение «Rocket».
Или этот:
Person p = new Person(“Petr”, “Ivanov”);
Тогда в поле
p.lastName
будет подставлено значение «Ivanov».
Слово
this
относится к объекту, который мы создаем, то есть фактически указывается: «под-
ставлять в поле имени и фамилии
этого объекта любые значения, передаваемые методу-конст-
руктору».
//Примечание редактора. В данном случае слово
this
можно добавить и в первый конструктор
– для уточнения имени полей. Ничего не изменится, если во втором конструкторе имена по-
лей будут указываться без
this
. Но иногда такое уточнение необходимо. Например, если во
втором конструкторе имя параметра задавать не одной буквой
f
, а именем
firstName
, от-
ражающим суть параметра, то без уточнения this в имени поля не обойтись, иначе компью-
тер запутается, не понимая, где имя поля, а где имя параметра метода.
События
В реальном мире события происходят непрерывно, причем некоторые
от нас совсем не зависят. На-
пример, восход и закат солнца (хотел бы я посмотреть, как вы пытаетесь заставить солнце вставать и
садиться).
Другие события мы вызываем сами: скажем, заставляем громкоговоритель издавать звуки.
Рассмотрим несколько событий, которые часто встречаются в мире компьютеров:
нажатие на кнопку, изображенную на экране монитора;
истечение времени таймера;
перемещение мыши;
нажатие клавиши на клавиатуре.
Очевидно, что, нажав на кнопку, мы хотим заставить компьютер выполнить определенное
действие. (Если нет – зачем вообще ее трогать?) Но компьютер ждет не только подтверждения,
45
Учимся общаться с компьютером
что нажатие этой кнопки имеет для вас какое-то значение, но и указания на действие, которое
нужно выполнить.
Рассмотрим подробнее этот пример, поскольку нажатие на кнопку, возможно, является на-
иболее распространенным событием, и детально разберем порядок работы. Допустим, в вашей
программе есть объект — кнопка с именем
mrButton
, на которой написано «Нажми меня».
По ходу обсуждения
Do'stlaringiz bilan baham: |