Помощь в написании студенческих работ
Антистрессовый сервис

Методы класса. 
Объектно-ориентированное программирование

РефератПомощь в написанииУзнать стоимостьмоей работы

Рассмотрим только заголовки методов. Все методы закрыты, поскольку объявлены без модификатора доступа. Перегруженные методы с именем, А нс возвращают результирующее значение, а метод F — возвращает значение. Оба перегруженных метода, А () имеют разную сигнатуру. Хотя имена и число параметров у всех методов одинаковы, но типы и ключевые слова, предшествующие параметрам, различны. Первый параметр… Читать ещё >

Методы класса. Объектно-ориентированное программирование (реферат, курсовая, диплом, контрольная)

Метод класса — это именованный блок выполняемого кода (набор операторов), который может быть вызван на выполнение из разных частей программы. При вызове метода он выполняет свой код, а затем возвращает управление тому коду, который его вызвал. Методы также могут возвращать некоторое значение.

Методы описывают поведение объектов класса. Два объекта одного класса имеют один и тот же набор методов. В описании метода класса выделяют две части — заголовок и тело метода:

заголовок_метода {// тело_метода}.

Заголовок метода описывается следующим образом:

[режим доступа][модификаторы] имя_метода ([список_формальных_параметров]).

Тип результата и список формальных параметров составляют сигнатуру метода. Следует отметить, что в сигнатуру не входят ни имя метода, ни имена параметров. Квадратные скобки в описании заголовка метода показывают, что режим доступа, модификаторы и параметры могут быть опущены при описании метода. Обязательным при описании заголовка является указание типа результата, имени метода и круглых скобок, наличие которых необходимо даже в том случае, если сам список формальных параметров отсутствует. Формально тип результата метода указывается всегда, но ключевое слово void означает отсутствие какого-либо результата. Вот несколько простейших примеров описания методов:

void A (int р) (…) int В (){…} public void С (){…}.

Список формальных параметров метода может быть пустым, что является обычным для методов класса. Список может содержать фиксированное число параметров, разделяемых символом запятая. Объявление формального параметра имеет следующий вид:

[ref | out | params] имя_параметра Обязательным является указание типа и имени параметра. Никаких ограничений на тип параметра нс накладывается.

Несмотря на фиксированное число формальных параметров, есть возможность при вызове метода передавать ему произвольное число фактических параметров. Для реализации этой возможности в списке формальных параметров необходимо задать ключевое слово params. Оно задастся один раз и указывается только для последнего параметра списка, объявляемого как массив произвольного типа. При вызове метода этому формальному параметру соответствует массив, содержащий произвольное число передаваемых фактических параметров.

Содержательно все параметры метода разделяются на три группы: входные, выходные и обновляемые. Входные параметры передают информацию методу, их значения в теле метода только читаются. Входные параметры задаются без ключевых слов out и ref.

Выходные параметры представляют собой результаты метода, они получают значения в ходе работы метода. Выходные параметры всегда должны сопровождаться ключевым словом out. Выходным параметрам в теле метода обязательно должно присваиваться некоторое значение. В противном случае возникает ошибка уже на этапе компиляции.

Обновляемые параметры выполняют обе функции. Их значения используются в ходе вычислений и обновляются в результате работы метода. Обновляемые параметры сопровождаться ключевым словом ref.

Для примера рассмотрим следующую группу методов: void A (out long р2, int p1) { p2 = (long) Math. Pow (p1,3);

Console. WriteLinefMeTOA A-1″);

}.

void A (out long p2, params int () p) {.

p2=0;

for (int i=0; i.

}.

int F (ref int a) { return (a++);

}.

Рассмотрим только заголовки методов. Все методы закрыты, поскольку объявлены без модификатора доступа. Перегруженные методы с именем, А нс возвращают результирующее значение, а метод F — возвращает значение. Оба перегруженных метода А () имеют разную сигнатуру. Хотя имена и число параметров у всех методов одинаковы, но типы и ключевые слова, предшествующие параметрам, различны. Первый параметр у обоих перегруженных методов выходной и сопровождается ключевым словом out, в теле метода этому параметру присваивается значение.

Параметр функции F — обновляемый, он снабжен ключевым словом ref, в теле функции используется его значение для получения результата функции, но и само значение параметра изменяется в теле функции. Один метод из группы перегруженных методов использует ключевое слово params для своего последнего параметра.

Методы класса имеют значительно меньше параметров, чем методы в обычном процедурном стиле программирования, когда не используется концепция классов. Это связано с тем, что методы класса используются для работы с данными класса, которому они принадлежат. Все поля доступны любому методу по определению. Нужно четко понимать, что в момент выполнения программной системы работа идет не с классом вообще, а с конкретными объектами — экземплярами класса. Из полей соответствующего объекта (цели вызова) извлекается информация, нужная методу в момент вызова, а работа метода чаще всего сводится к обновлению значений полей этого объекта. Поэтому очевидно, что методу не нужно через входные параметры передавать информацию, содержащуюся в полях объекта. Если в результате работы метода обновляется значение некоторого поля, то также не нужен никакой выходной параметр.

Показать весь текст
Заполнить форму текущей работой