자바 클래스의 static 메소드는 특정한 클래스의 인스턴스 생성 없이 직접 호출할 수 있는 메소드입니다.
static 메소드는 클래스 수준에 속하는 메소드로, 클래스와 관련된 작업을 수행하는 데 사용됩니다.
다음은 static 메소드의 특징과 사용법을 설명하는 예제 코드입니다.
public class MathUtils {
public static int add(int a, int b) {
return a + b;
}
public static int subtract(int a, int b) {
return a - b;
}
}
public class Main {
public static void main(String[] args) {
int sum = MathUtils.add(5, 3);
System.out.println("Sum: " + sum);
int difference = MathUtils.subtract(8, 4);
System.out.println("Difference: " + difference);
}
}
위의 예제에서 MathUtils 클래스는 static 메소드인 add와 subtract를 가지고 있습니다. add 메소드는 두 개의 정수를 받아서 합을 반환하고, subtract 메소드는 두 개의 정수를 받아서 차를 반환합니다.
Main 클래스에서는 MathUtils 클래스의 static 메소드를 호출하여 사용합니다. add 메소드를 호출하여 5와 3의 합을 계산하고, subtract 메소드를 호출하여 8과 4의 차를 계산합니다. 결과는 콘솔에 출력됩니다.
static 메소드는 다음과 같은 특징을 가지고 있습니다:
1 . 클래스 수준에 속하므로 클래스 이름으로 직접 호출할 수 있습니다. (MathUtils.add()와 같이 호출)
2 . static 메소드는 인스턴스 변수나 인스턴스 메소드에 직접 접근할 수 없습니다. 그 이유는 static 메소드는 인스턴스 생성 없이 호출되므로 인스턴스와 관련된 정보에 접근할 수 없기 때문입니다.
3 . static 메소드는 다른 static 메소드나 static 변수만 접근할 수 있습니다.
4 . static 메소드 내에서는 인스턴스 변수나 인스턴스 메소드를 사용할 수 없지만, 인스턴스를 생성하여 해당 인스턴스의 변수와 메소드를 사용할 수는 있습니다.
따라서, static 메소드는 클래스와 관련된 유틸리티 메소드를 구현하거나, 객체 인스턴스와 관계없이 공통적으로 사용되는 메소드를 구현하는 데 유용합니다.
자바에서는 다양한 내장 클래스와 라이브러리에서 유용한 static 메서드를 제공합니다.
이것은 몇 가지 대표적인 static 메서드의 예시일 뿐이며, 다른 클래스와 라이브러리에서도 다양한 유용한 static 메서드들이 제공됩니다.