public class A {
void method1(int arg) { // final int arg
//로컬 변수
int var = 1; // final int var = 1
//로컬 클래스
class B {
static int field = 1; // 정적 필드(Java 17)
(B 생성자)
static void method2() {
sout(arg); // 읽기 가능
// arg = 1; // 불가능
} // 정적 메소드(Java 17)
}
// 로컬 객체
B b = new B();
b.method2();
// 로컬 변수를 로컬 클래스에서 사용할 경우 로컬 변수는 final 특성을 갖게되고
// 읽을 수만 있고 수정이 불가능해짐
// Java 8 이후부터는 final 키워드를 붙이지 않아도 됌
//arg = 3 불가능
}
}
'프로그래밍 > JAVA' 카테고리의 다른 글
[Java] 데이터베이스 연동(MySQL) (0) | 2024.07.31 |
---|---|
[Java] 중첩 인터페이스 (0) | 2024.07.29 |
[Java] Java15 이후 제공되는 봉인된 클래스 sealed (0) | 2024.07.29 |
[JAVA] Java 12 이후 부터의 switch (0) | 2024.07.29 |
[JAVA] 람다식과 메소드참조 정리 (for Stream) (0) | 2024.07.25 |