자바☕
11. 19 내부 클래스/ static vs final vs static final
wannaDevelopIt
2022. 11. 19. 23:59
728x90
내부 클래스
클래스 내에 선언된 클래스
장점:
내부 클래스에서 외부 클래스의 멤버들을 쉽게 접근할 수 있다.
코드 복잡성을 줄일 수 있다(캡슐화)
static vs final vs static final
static = "고정된"
static 변수(클래스 변수):
-해당 변수에 메모리 할당을 딱 한번만 하는 메모리 절약효과
-**static 변수의 메모리 주소가 한 곳으로 고정되기 때문에, 인스턴스 변수간 값이 그 주소로 공유되기 때문에,
해당 변수(속성)의 값 고정된 주소에서 공유된다.
static 메서드:
객체 생성없이 해당 클래스.static메서드를 입력하여 해당 메서드를 호출할 수 있다.
*static 메서드 안에서는 인스턴스 변수로 접근이 불가능하다.
(vs 인스턴스 메서드:
객체 생성: 클래스 참조변수 = new 클래스로 생성
참조변수.인스턴스 메서드로 호출)
final = "최종적인"
저장된 값을 고정
static final = "상수"
상수를 만들 때 사용
*final이 상수가 될 수 없는 이유: 인스턴스 변수는 상호독립이므로 객체마다 저장값의 변경이 가능하여,
fianl만으로는 상수가 될 수 없다.
728x90