Для определения методов используется следующий формат:
Методы в Java - 1
возвращаемый-тип идентификатор-метода (параметры)
{
тело-метода
}
Возвращаемый-тип определяет тип данных, которые возвращает метод при вызове (возвращаемый ответ на сообщение). Если метод не возвращает никакого значения, то возвращаемый-тип имеет значение void. Идентификатор-метода определяет имя метода, а параметры – список параметров, которые необходимо передать методу при его вызове. Параметры в списке отделяются друг от друга запятыми и каждый параметр имеет следующий вид: тип идентификатор где тип определяет тип параметра, а идентификатор – имя параметра (область действия этого имени – только внутри тела метода). Если параметры отсутствуют, после идентификатора-метода указываются пустые скобки. Тело-метода содержит операторы, реализующие действия, выполняемые данным методом. Если тип возвращаемого значения не void, в теле метода должен быть хотя бы один оператор return выражение; где тип выражения должен совпадать с типом возвращаемого значения. Этот оператор возвращает результат вычисления выражения в точку вызова метода. Если тип возвращаемого значения – void, возврат из метода выполняется либо после выполнения последнего оператора тела метода, либо в результате выполнения оператора return; (таких операторов в теле метода может быть несколько). Пример объявления метода, возвращающего значение типа int – сумму двух своих параметров типа int:
int sum(int a, int b)
{
int x;
x = a + b;
return x;
}
(тело метода можно также записать с помощью одного оператора: return a + b). При вызове метода, например, sum(5, 3), параметры 5 и 3 передаются в метод, как значения соответственно a и b, и оператор вызова метода sum(5, 3)– заменяется значением, возвращаемым методом (8). В отличие от языка C, в котором тип параметра, задаваемого при вызове, приводится к типу параметра в объявлении функции, тип задаваемого параметра в Java должен строго соответствовать типу параметра в объявлении метода, поэтому вызов метода sum(1.5, 8) приведет к ошибке при компиляции программы. В языке Java в пределах одного класса можно определить два или более ме­тодов, которые совместно используют одно и то же имя, но имеют разное количество параметров. Когда это имеет место, методы называют перегру­женными, а о процессе говорят как о перегрузке метода (method overloading). Когда метод вызывается, то по количеству параметров и/или их типам среда выполнения Java определяет, какую именно версию перегруженного метода надо вызывать (тип возвращаемого значения во внимание не принимается, хотя, в принципе, он тоже может отличаться у разных версий перегруженных методов). Например, метод
double sum(double a, double b)
{
double x;
x = a + b;
return x;
}
вместе с объявленным ранее методом int sum(int a, int b) составляют пару перегруженных методов и при вызове sum(5,8) будет вызван первый метод, а при вызове sum(5.0, 8.0) будет вызван второй метод. По умолчанию метод, как и переменная, доступен только классам в том же пакете (наборе классов), что и исходный класс. Если перед возвращаемым типом задан модификатор доступа public, то метод является глобальным и доступен любым объектам, а модификатор private означает, что метод доступен в том классе, в котором он был объявлен, т.е. метод инкапсулирован в данном классе. В программе на языке Java можно использовать методы, реализация которых, выполнена во внешнем файле, в программе написанном на языке C/C++. Для этого перед определением метода (но без тела метода) указывается модификатор native, например:
native int CalcTotal();
Ссылка на первоисточник: Методы в Java