반응형
문제
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 메서드 이더라도)
반응형
'언어 > JAVA' 카테고리의 다른 글
JNI를 이용해 golang으로 작성된 함수 호출하기 (속도 측정) (1) | 2024.07.08 |
---|---|
이분탐색 허벌나게 쉽게 구현(기억)하기 (0) | 2023.04.13 |
이상하고 아름다운 JAVA 퀴즈 6 (0) | 2023.04.11 |
UDP vs TCP 비교 (부제 : TCP가 UDP보다 빠르다?) (0) | 2023.04.11 |
Permutation, Combination algorithm using bitmasking (0) | 2023.04.06 |