언어/JAVA

이상하고 아름다운 JAVA 퀴즈 7

유호건 2023. 4. 17. 19:15
반응형

문제

public class Quiz {

	public static void main(String[] args) {
		System.out.println("Hello, World!");	
	}

}

위 코드에서 main 메서드를 수정하지 않고(접근제어자, 메서드본문 등 모두 수정 불가)

GoodBye, World! 만이 출력되도록 하는 방법은?

(Hello, World!는 출력되면 안됨)

 

정답

더보기
public class Quiz {

	static{
    	System.out.println("Goodbye, World!");
        System.exit(0);
    }

	public static void main(String[] args) {
		System.out.println("Hello, World!");	
	}

}

static 블록을 사용하면 된다.

static 블록은 클래스가 메모리에 처음 로드될 때 실행되므로, main 메서드의 실행보다 앞선다. (main 메서드가 static 메서드 이더라도)

반응형