티스토리 뷰

  • 소스 파일 하나에 톱레벨 클래스를 여러 개 선언하더라도 컴파일러는 불평하지 않지만 아무런 득이 없을 뿐더러 심각한 위험을 감수하는 행위다.
  • 한 클래스를 여러가지로 정의할 수 있으며, 그 중 어느것을 사용할지는 어느 소스 파일을 먼저 컴파일 하느냐에 따라 달라지기 때문이다.
  • 컴파일러에 어느 소스 파일을 먼저 건네느냐에 따라 동작이 달라진다.

결론

  • 소스 파일 하나에는 반드시 톱레벨 클래스를 하나만 담자.
  • 굳이 한 파일에 담고 싶다면 정적 멤버 클래스를 사용하자. (Item24)