public class 가 있는 경우, 소스 파일의 이름은 반드시 public class의 이름과 일치해야 한다.

// Hello2.java
public class Hello2 {}
class Hello3 {}

 

public class가 하나도 없는 경우, 소스 파일의 이름은 'Hello2.java', 'Hello3.java' 둘 다 가능하다.
이 경우, 하나의 소스 파일에 둘 이상의 public class가 존재하면 안 된다.

// Hello2
class Hello2 {}
class Hello3 {}