Java - 문제 미리보기
문제 2268
medium
다음 코드의 실행 결과는 무엇인가요?
```java
public class Constants {
final int MAX_SIZE = 100;
final double PI = 3.14;
public void changeValues() {
MAX_SIZE = 200; // 라인 A
PI = 3.14159; // 라인 B
}
public static void main(String[] args) {
Constants obj = new Constants();
obj.changeValues();
System.out.println(obj.MAX_SIZE);
}
}
```
정답: C
⦁ `final` 키워드의 역할:
• 변수를 상수로 만들어 값을 변경할 수 없게 합니다
• 한 번 초기화된 후에는 재할당이 불가능합니다
• 컴파일 시점에서 에러를 발생시킵니다
⦁ 에러 발생 지점:
• 라인 A: `MAX_SIZE = 200` → final 변수 재할당 시도
• 라인 B: `PI = 3.14159` → final 변수 재할당 시도
⦁ 컴파일 에러 메시지: "cannot assign a value to final variable"
⦁ `final`로 선언된 변수는 불변(immutable)이므로 값 변경이 원천적으로 차단됩니다
💡 학습 팁
이 문제를 포함한 Java 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.