Читайте также:
|
|
Цель работы
Получить знания о простейших конструкциях языка Java – функциях, массивах, строках.
Задание для домашней подготовки
Ознакомиться с материалом, предоставленным в данных методических указаниях. Отладить и проанализировать готовый пример 1, используя среду Eclipse.
Понятия функции и метода
Функция — часть программы, имеющая собственное имя. Это имя можно использовать в программе как команду (такая команда называется вызовом функции). При вызове функции выполняются команды, из которых она состоит. Вызов функции может возвращать значение (аналогично операции) и поэтому может использоваться в выражении наряду с операциями.
Функции используются в программировании, чтобы уменьшить его сложность:
1. Вместо того чтобы писать непрерывную последовательность команд, в которой вскоре перестаешь ориентироваться, программу разбивают на подпрограммы, каждая из которых решает небольшую законченную задачу, а потом большая программа составляется из этих подпрограмм (этот прием называется декомпозицией).
2. Уменьшается общее количество кода, потому что, как правило, одна функция используется в программе несколько раз.
3. Написанная однажды и всесторонне проверенная функция, может быть включена в библиотеку функций и использоваться в других программах (при этом не надо вспоминать, как была запрограммирована эта функция, достаточно знать, что она делает). Существует множество полезных библиотек функций, которыми могут пользоваться все программисты, а некоторые библиотеки поставляются «в комплекте» с языком программирования (например, все, кто программировал на Паскале, пользовались библиотечной функцией writeln() для вывода на экран, а в Java для этих целей доступен метод System.out.println(), входящий в одну из стандартных библиотек).
Метод — это функция, являющаяся частью некоторого класса, которая может выполнять операции над данными этого класса. В языке Java вся программа состоит только из классов и функции могут описываться только внутри них. Именно поэтому все функции в языке Java являются методами.
Суть понятия метод рассматривается в следующей работе. А пока мы можем использовать его как синоним знакомого (по другим языкам программирования) понятия функция.
Объявление метода
Для того чтобы использовать в программе собственный метод, его необходимо объявить.
При объявлении метода необходимо указать тип значения, которое будет возвращено после выполнения метода в программу. Если значение возвращать не нужно, указывается ключевое слово void. Затем идет произвольный идентификатор — имя метода. После имени метода в круглых скобках указывается список параметров (может быть пустым), а затем — в фигурных скобках — команды, составляющие тело метода.
Параметры — это данные, которые нужны методу для работы. Например, метод, рисующий круг, должен получить радиус и координаты центра круга. (Можно, конечно, было бы разработать метод без параметров, который рисует круг единичного радиуса с центром в начале координат, но он был бы значительно менее полезен).
Описание каждого параметра аналогично объявлению переменной (тип, а затем идентификатор — имя параметра). Параметры перечисляются через запятую.
В теле метода, возвращающего значение, должна быть команда return, после которой через пробел указывается выражение соответствующего типа. Эта команда заканчивает работу метода и передает указанное выражение в качестве возвращаемого значения основной программе — в то место, откуда метод был вызван *.
В качестве примера создадим метод для вычисления суммы квадратов двух целых чисел. Как и в случае с программой, важно в первую очередь определить входные и выходные данные. Входные данные — это параметры метода. Выходные данные — это его возвращаемое значение.
Замечание: в объектно-ориентированной концепции акцент несколько иной. Методы могут получать данные для работы, обращаясь к атрибутам своего класса, а результат их работы может заключаться в изменении этих атрибутов. Однако в рамках данного раздела мы рассматриваем методы как классические функции — подпрограммы.
Входными данными для рассматриваемого метода будут, очевидно, два целых числа. Выходные данные (результат) — целое число, представляющее собой сумму их квадратов.
Простейший вариант метода будет выглядеть следующим образом:
long squareSum(int x, int y) { return x*x + y*y;}
Перед возвращаемым типом указывается одно или несколько ключевых слов модификаторов (которые будут изучены позднее). Нам необходимо добавить к объявлению метода squareSum() модификатор static, поскольку мы собираемся обращаться к нему из метода main(), имеющего такой модификатор.
Описание метода squareSum() должно находиться внутри того единственного класса, из которого состоит наша простая программа, но не внутри метода main(), а на одном уровне с ним. То есть:
package mainPack;
public class MyClass {
/*** @param args*/
public static void main(String[] args) {}
static long squareSum(int x, int y) { return x*x + y*y;}}
В результате в классе MyClass теперь два метода, один из которых, main(), выполняется при старте программы. Чтобы выполнился второй метод, его необходимо вызвать.
Дата добавления: 2015-09-11; просмотров: 67 | Поможем написать вашу работу | Нарушение авторских прав |