[ Введение | Основы | if/else | Циклы | Массивы | Графика | Анимация | Мышь | Клавиатура | Математика | Методы | Текст | Задачи ]
Метод - это последовательность инструкций, которые выполняют некоторуе часто повторяющееся действие. Чтобы не повторять всякий раз 10 строк кода, мы можем поместить их в тело метода и вызывать его одной строкой.
Метод может вызывать другие методы. Для этого у каждого метода есть уникальное имя.
Рассмотрим пример:
void print1() { printLine("Который построил Джек."); printLine(""); } void print2() { printLine("Которая в темном чулане хранится"); printLine("В доме,"); print1(); } void print3() { printLine("Которая часто ворует пшеницу,"); print2(); } void print4() { printLine("Который пугает и ловит синицу,"); print3(); } void print5() { printLine("Который за шиворот треплет кота,"); print4(); } void print6() { printLine("Лягнувшую старого пса без хвоста,"); print5(); } void print7() { printLine("Которая доит корову безрогую,"); print6(); } void print8() { printLine("Который бранится с коровницей строгою,"); print7(); } void print9() { printLine("Которые будят того пастуха,"); print8(); } void main() { printLine("Вот дом,"); print1(); printLine("А это пшеница,"); print2(); printLine("А это веселая птица-синица,"); print3(); printLine("Вот кот,"); print4(); printLine("Вот пес без хвоста,"); print5(); printLine("А это корова безрогая,"); print6(); printLine("А это старушка, седая и строгая,"); print7(); printLine("А это ленивый и толстый пастух,"); print8(); printLine("Вот два петуха,"); print9(); }
Запустите эту программу. Наша программа гораздо короче чем получившийся стишок, не правда ли?
Методы могут принимать значания посредством передачи параметров. Вот как это делается:
void print1(String a, String b) { printLine(a + " " + b); printLine(a + " " + b); printLine("Вот как, вот как " + b); printLine("Вот как, вот как " + b); printLine(""); } void main() { print1("Жил-был у бабушки", "серенький козлик"); print1("Бабушка козлика", "очень любила"); print1("Вздумалось козлику", "в лес погуляти"); print1("Напали на козлика", "серые волки"); print1("Остались от козлика", "рожки да ножки"); }
Здесь метод print1 принимает два параметра “a” и “b” типа String. Вообще говоря, параметры (их еще называют аргументами) могут быть любого типа. Например, int, double, boolean, и так далее. Количество параметров метода может быть любым, главное, при вызове не перепутать их порядок.
Метод, приведенный выше, использует значения аргументов для печати очередного куплета песенки.
В предыдущем примере возвращаемое значение ниших методов было обозначено как “void”. Слово void переводится как “пусто” и означает, что никакое значение не возвращается.
Если мы хотим, чтобы метод вернул какое-то значение, мы должны обозначить его тип в объявлении метода. Например:
int fibo(int n)
Метод fibo принимает один параметр целого типа и возвращает целое значение.
Рассмотрим последовательность целых чисел, которая определяется такими правилами:
Первым такую последовательность придумал Леонардо Фибоначчи, и с тех пор их так и называют — числа Фибоначчи.
Напишем программу, вычисляющую числа Фибоначчи по их номеру.
int fibo(int n) { if (n <= 2) return 1; int a = fibo (n-1); int b = fibo (n-2); return a + b; } void main() { int n, fn; while (true) { printLine("Введите номер числа Фибоначчи:"); n = readInt(); fn = fibo(n); printLine("Число Фибоначчи с номером " + n + " равно " + fn); } }
Знаете ли Вы, что: