728x90
- 소스파일 하나에 톱레벨 클래스를 여러개 선언하더라도 컴파일 된다.
- 하지만 같은 클래를 컴파일하거나, 설령 컴파일이 됐다하더라도, 컴파일러가 읽는 순서에 따라 동작이 달라질 수 있는 위험이 있다.
- 이를 해결하기 위해. 서로 다른 소스 파일로 분리하고
- 굳이 여러 톱레벨 클래스를 한파일에 담고 싶다면, 정적 멤버 클래스(아이템24)를 사용하는 방법을 고민해 보자.
- 교훈: 소스 파일 하나에는 반드시 톱레벨 클래스(혹은 톱레벨 인터페이스)를 하나만 담자
728x90
'공부 > 이펙티브자바' 카테고리의 다른 글
[이펙티브자바]item 27.비검사 경고를 제거하라 (0) | 2023.02.10 |
---|---|
[이펙티브자바]item 26.로 타입은 사용하지 말라 (0) | 2023.02.10 |
[이펙티브자바]item 24.멤버 클래스는 되도록 static으로 만들라. (0) | 2023.02.08 |
[이펙티브자바]item 23.태그 달린 클래스보다는 클래스 계층구조를 활용하라. (0) | 2023.02.06 |
[이펙티브자바]item 22.인터페이스는 타입을 정의하는 용도로만 사용하라. (0) | 2023.02.06 |
댓글