static void와 void는 메소드의 리턴 타입을 나타내는 키워드입니다.
void는 메소드가 반환하는 값이 없음을 나타내며, 메소드의 실행 결과를 반환하지 않습니다. 예를 들어, 다음과 같이 메소드를 정의할 수 있습니다.
public void printMessage(String message) {
System.out.println(message);
}
위의 메소드는 인자로 전달된 메시지를 콘솔에 출력하는 기능을 합니다. 하지만 반환하는 값이 없으므로 void를 사용합니다.
반면에, static void는 클래스 메소드를 정의할 때 사용되며, 해당 클래스의 인스턴스 생성 없이 호출할 수 있습니다. 예를 들어, 다음과 같이 정의된 메소드가 있다고 가정해 봅시다.
public static void printStaticMessage(String message) {
System.out.println(message);
}
위의 메소드는 인자로 전달된 메시지를 콘솔에 출력하는 기능을 합니다. 하지만 static 메소드이므로 클래스의 인스턴스 생성 없이도 호출할 수 있습니다. 예를 들어, 다음과 같이 메소드를 호출할 수 있습니다.
MyClass.printStaticMessage("Hello, world!");
이와 같이 static void 메소드는 인스턴스를 생성하지 않고도 호출할 수 있습니다.