728x90
반응형
package chap7;
/*
* final : 변경 불가의 의미
*
* 상수 : 설정된 값을 변경 할 수 없는 변수
* final 변수 : 변경불가 변수. 상수(conts 사용안함)
* 생성자에서 한번은 값을 설정 할 수 있다. => 명시적 초기화 안된 경우만 가능
* => 객체별로 다른 상수값을 가질 수 있다.
*/
class FinalValue {
final int NUM = 100; //선언과 동시에 초기화 필요 (명시적 초기화)
final int NUM2;
FinalValue(int n) {
// this.NUM = n; //명시적 초기화된 상수이므로 생성자에서 초기화 불가
this.NUM2 = n; //생성자에서 한번은 초기화 가능
// this.NUM2 = n+10; //생성자에서 한번은 초기화 가능
}
}
public class FinalValueEx1 {
public static void main(String[] args) {
FinalValue f1 = new FinalValue(10);
// f1.NUM = 200; //상수이므로 값의 변경이 안됨
// f1.NUM2 = 1000; //상수이므로 값의 변경이 안됨
System.out.println(f1.NUM); //100
System.out.println(f1.NUM2);//10
FinalValue f2 = new FinalValue(20);
System.out.println(f2.NUM2); //20
}
}
728x90
반응형
'study > Java' 카테고리의 다른 글
[Java] 24. Interface1 (인터페이스 예제) (0) | 2022.03.22 |
---|---|
[Java] 23. 제한자 Exam1 (ARR 배열에 생성자에서 1부터 주어진 숫자까지의 값을 저장하기) (0) | 2022.03.21 |
[Java] 23. final2 (0) | 2022.03.21 |
[Java] 23. final1 (0) | 2022.03.21 |
[Java] 23. Test1 풀이 (각 클래스를 생성하고 출력하기) (0) | 2022.03.21 |