Методы в Java
Когда вы начинаете программировать на Java, вы должны знать, что есть много новых концепций, которые нужно изучить: классы, методы, исключения, конструкторы, переменные и многое другое, и это может стать ошеломляющим. Поэтому лучше учиться медленно. В этой статье мы: изучить методы и как вызвать метод в Java.
Метод Java эквивалентен функции на языке C, которая включает в себя набор операций в одном блоке, целью которого является оптимизация и сокращение кода. Этот метод может быть вызван из других методов, и при его вызове все методы внутри этого метода также будут вызваны и выполнены. Например, при вызове System.out.println(), система выполняет несколько операций только для вывода сообщения в консоль.
Теперь вы узнаете, как создавать свои собственные методы с возвратами или без них, вызывать метод с параметрами или без них, а также оптимизировать абстракцию кода в методе.
- Второе ключевое слово, static означает, что метод принадлежит классу и экземпляру класса (объекта). Семейство шрифтов static должен быть вызван с использованием имени класса: "ExampleClass.ExampleMethod()". Однако, если ключевое слово static отсутствует, поэтому метод может быть вызван только через объект. Если у класса есть конструктор (для создания объектов), то экземпляр класса можно создать, набрав ExampleObject obj = new ExampleObject(); и вызовите метод с "obj. ExampleMethod(); ".
- int — тип возвращаемого значения функции, в этом случае метод объявляется как функция, возвращающая целочисленный результат после выполнения обработки. Ключевое слово, возвращающее результат: return.
- int a, int b - это список параметров, которые будут использоваться внутри метода, например, мы хотим сделать операцию сложения a и b и поместить результат в переменную sum, которая будет возвращена в качестве вывода с помощью оператора возвращаемая сумма; .
Example:
Вот код для сравнения двух чисел и получения максимального значения. Функция принимает два параметра nb1 и nb2 и возвращает максимум обоих:
Обратите внимание, что метод System.out.println() ничего не возвращает, так как имеет тип void.
1- Оператор return выполняется (функция).
2- Мы доходим до закрывающей скобки, ничего не возвращая (процедура).
Вы можете использовать то, что возвращает функция, как показано в этом примере:
Передача параметров по значению означает вызов метода с параметром. В следующей программе показан пример передачи по значению. Значения аргументов остаются прежними после вызова method.
Рассмотрим пример, показанный ранее, который определяет максимум между двумя целыми числами. Допустим, мы хотим определить максимальное количество типа double. Концепция перегрузки поможет нам создать два или более методов с одинаковыми именами, но разными параметрами.
Метод Java эквивалентен функции на языке C, которая включает в себя набор операций в одном блоке, целью которого является оптимизация и сокращение кода. Этот метод может быть вызван из других методов, и при его вызове все методы внутри этого метода также будут вызваны и выполнены. Например, при вызове System.out.println(), система выполняет несколько операций только для вывода сообщения в консоль.
Теперь вы узнаете, как создавать свои собственные методы с возвратами или без них, вызывать метод с параметрами или без них, а также оптимизировать абстракцию кода в методе.
Создание метода
Рассмотрим следующий пример, чтобы понять структуру метода method:
public static int methodname(int a, int b) {
// method body
int sum = a + b; < руб./> сумма возврата;
}
- Ключевое слово public означает, что сам метод может Быть вызывается из любого блока, разных классов или даже разных пакетов, если вы импортируете вызывающий класс. Есть еще три ключевых слова, которые могут заменить public. Это protected и частный. Если метод protected, только после этого этот класс и нижестоящие классы, которые от него наследуются, могут вызвать метод. Если метод private, то метод может Быть вызывается только в классе.
- Второе ключевое слово, static означает, что метод принадлежит классу и экземпляру класса (объекта). Семейство шрифтов static должен быть вызван с использованием имени класса: "ExampleClass.ExampleMethod()". Однако, если ключевое слово static отсутствует, поэтому метод может быть вызван только через объект. Если у класса есть конструктор (для создания объектов), то экземпляр класса можно создать, набрав ExampleObject obj = new ExampleObject(); и вызовите метод с "obj. ExampleMethod(); ".
- int — тип возвращаемого значения функции, в этом случае метод объявляется как функция, возвращающая целочисленный результат после выполнения обработки. Ключевое слово, возвращающее результат: return.
- int a, int b - это список параметров, которые будут использоваться внутри метода, например, мы хотим сделать операцию сложения a и b и поместить результат в переменную sum, которая будет возвращена в качестве вывода с помощью оператора возвращаемая сумма; .
Example:
Вот код для сравнения двух чисел и получения максимального значения. Функция принимает два параметра nb1 и nb2 и возвращает максимум обоих:
public static int max(int a, int b) {
int max;
if(a> б)
max=a;
else
max=b;
возврат макс.;
}
Ключевое слово void
Слово void указывает, что метод ничего не возвращает при вызове метода. Если вы хотите, чтобы метод что-то возвращал, замените слово void по типу данных объекта, который вы хотите вернуть. Затем добавьте слово return а также object.
В этом примере мы рассмотрим процедуру, которая принимает int n в качестве параметра и выводит список чисел из 1 в n. Этот метод имеет тип void и не возвращает значение.
public class main {Runtime:
public static void main(String[] args) {
print(5);
}
public static void print(int n){
for(int i = 0; i < n; i++)
System.out.println(i);
}
}
0
1
2
3
4
Как вызвать метод
Чтобы использовать метод, его нужно вызвать. Существует два способа вызова метода. Обработать вызов метода очень просто. Когда программа вызывает метод, метод Управление есть передан вызываемому методу. После завершения метода элемент управления возвращается вызывающей стороне с двумя условиями:1- Оператор return выполняется (функция).
2- Мы доходим до закрывающей скобки, ничего не возвращая (процедура).
Вы можете использовать то, что возвращает функция, как показано в этом примере:
public class main {Runtime:
public static void main(String[] args) {
int a, b;
a = 5;
b = 10;
int результат = sum(a, b);
System.out.println("a+b = "+result);
}
public static int sum(int a, int b){
return a+b;
}
}
a+b = 15
Передача параметров по значению
Передаваемые аргументы должны точно совпадать с порядком параметров, объявленных в методе. Параметры могут передаваться по значению или по ссылке.Передача параметров по значению означает вызов метода с параметром. В следующей программе показан пример передачи по значению. Значения аргументов остаются прежними после вызова method.
public class main {Runtime:
public static void main(String[] args) {
int a = 30;
int b = 45;
System.out.println("До подкачки (main), a = " + a
+ " b = " + b);
//вызов метода permute()
permute(a, b);
System.out.println("После подкачки (main), a = " + a
+ " b = " + b);
}
public static void permuter(int a, int b) {
System.out.println("Перед перестановкой (методом), a = " + a
+ " b = " + b);
// поменять местами a на b
int c = a;
a = b;
b = c;
System.out.println("После подкачки (метода), a = " + a
+ " b = " + b);
}
}
До свопа (основной), a = 30 b = 45
Перед свопом (метод), a = 30 b = 45
После свопа (метод), a = 45 b = 30
После свопа (рука), a = 30 b = 45
Перегрузка метода в java
Когда класс содержит два или более методов с одинаковыми именами, но разными параметрами, это называется перегрузкой методов. Это отличается от переопределения, когда метод имеет одинаковое имя, тип, количество параметров и т.д.Рассмотрим пример, показанный ранее, который определяет максимум между двумя целыми числами. Допустим, мы хотим определить максимальное количество типа double. Концепция перегрузки поможет нам создать два или более методов с одинаковыми именами, но разными параметрами.
public class main {Runtime:
public static void main(String[] args) {
int a, b;
a = 7;
b = 8;
System.out.println("max("+a+", "+ b+") = "+max(a, b));
double x,y;
x=1,5;
y=4,2;
System.out.println("max("+x+", "+ y+") = "+max(x, y));
}
public static int max(int a, int b) {
int max;
if(a> б)
max=a;
else
max=b;
возврат макс.;
}
public static double max(double a, double b) {
double max;
if(a> б)
max=a;
else
max=b;
возврат макс.;
}
}
max(7, 8) = 8Перегрузка метода делает программу адаптируемой. Здесь два метода имеют одно и то же имя, но разные параметры. Максимальное количество целочисленных и двойных типов равно result.
max(1.5, 4.2) = 4.2