Java의 메소드

Java로 프로그래밍을 시작할 때 클래스, 메서드, 예외, 생성자, 변수 등 배워야 할 새로운 개념이 많이 있으며 압도적일 수 있다는 것을 알아야 합니다. 따라서 천천히 배우는 것이 가장 좋습니다. 이 문서에서는 다음을 수행합니다. 메소드 및 Java.
Java 메소드는 코드를 최적화하고 줄이는 것을 목적으로 하는 단일 블록에 일련의 연산을 포함하는 C 언어의 함수와 동일합니다. 이 메서드는 다른 메서드에서 호출할 수 있으며 호출되면 해당 메서드 내의 모든 메서드도 호출되고 실행됩니다. 예를 들어, System.out.println() 시스템은 콘솔에 메시지를 표시하기 위해 몇 가지 작업을 수행합니다.

이제 반환을 사용하거나 사용하지 않고 고유한 메서드를 만들고, 매개 변수를 사용하거나 사용하지 않고 메서드를 호출하고, 메서드에서 코드 추상화를 최적화하는 방법을 배우게 됩니다.

메서드 만들기

의 구조를 이해하기 위해 다음 예제를 살펴보겠습니다. method:

public static int methodname(int a, int b) {
// 메소드 body
int sum = a + b;
반환 합계;
}
- 키워드 public은 메서드 자체가     호출 클래스를 가져오는 한 모든 블록, 다른 클래스 또는 다른 패키지에서 호출됩니다. public입니다. 이것들은 protectedprivate입니다. 메서드가 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> b)
최대=a;
else
최대=b;
최대 반환;
}

void 키워드

void은 메서드를 호출할 때 메서드가 아무 것도 반환하지 않음을 나타냅니다. 메서드가 무언가를 반환하도록하려면 void 반환하려는 개체의 데이터 형식을 기준으로 합니다. 그런 다음 return과 object.

이 예제에서는 int n을 매개변수로 사용하고 1에서 n입니다. 이 메서드는 void 값을 반환하지 않습니다.

public class main {
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);
}
}
Runtime:

0
1
2
3
4
System.out.println() 은 void.

메서드를 호출하는 방법

메서드를 사용하려면 메서드를 호출해야 합니다. 메서드가 호출되는 방법에는 두 가지가 있습니다. 메서드 호출 처리는 간단합니다. 프로그램이 메서드를 호출하면 제어  is  호출된 메서드로 전송됩니다. 메서드가 완료되면 다음 두 가지 조건으로 제어가 호출자에게 반환됩니다.

1- return이 실행됩니다(function).
2- 아무 것도 반환하지 않고 닫는 괄호에 도달합니다(프로시저).

이 예제와 같이 함수가 반환하는 것을 사용할 수 있습니다.

public class main {
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;
}
}
Runtime:

a+b = 15

값으로 매개 변수 전달

전달되는 인수는 메서드에 선언된 매개 변수의 순서와 정확히 일치해야 합니다. 매개 변수는 값 또는 참조로 전달할 수 있습니다.

값으로 매개 변수를 전달한다는 것은 매개 변수를 사용하여 메서드를 호출하는 것을 의미합니다. 다음 프로그램에서는 값으로 전달하는 방법의 예를 보여 줍니다. 인수의 값은 메서드를 호출한 후에도 동일하게 유지됩니다.

public class main {
public static void main(String[] args) {
int a = 30;
정수 b = 45;

System.out.println("스왑 전(메인), 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);
}
}
Runtime:

스왑 전(main), a = 30 b = 45
스왑 전(방법), a = 30 b = 45
스왑(방법) 후, a = 45 b = 30
스왑(손) 후, a = 30 b = 45

java의 메소드 오버로드

클래스에 이름은 같지만 매개변수가 다른 두 개 이상의 메소드가 포함되어 있는 경우 이를 메소드 오버로딩이라고 합니다. 메서드의 이름, 유형, 매개 변수 수 등이 동일한 경우 재정의하는 것과는 다릅니다.

두 정수 사이의 최대값을 결정하는 앞에서 본 예를 살펴보겠습니다. double 유형의 최대 수를 결정하고 싶다고 가정 해 봅시다. 오버로드의 개념은 이름은 같지만 매개변수가 다른 두 개 이상의 메서드를 만드는 데 도움이 됩니다.

public class main {
public static void main(String[] args) {
int a, b;
a = 7;
b = 8;
System.out.println("최대("+a+", "+ b+") = "+최대(a, b));

더블 x,y;
x=1.5;
y=4.2;
System.out.println("최대("+x+", "+ y+") = "+최대(x, y));
}

공개 정적 int max(int a, int b) {
int 최대;
if(a> b)
최대=a;
else
최대=b;
최대 반환;
}

public static double max(double a, double b) {
double max;
if(a> b)
최대=a;
else
최대=b;
최대 반환;
}
}
Runtime:

max(7, 8) = 8
max(1.5, 4.2) = 4.2
메서드 오버로드는 프로그램을 적응할 수 있도록 합니다. 여기서 두 메서드의 이름은 같지만 매개변수가 다릅니다. integer 및 double 형식의 최대 개수는 result.