public class인 경우 별도의 파일에 작성되어야 합니다. 이는 자바에서 파일명과 클래스명이 일치해야 하기 때문입니다.
다음 페이지들을 참고해보세요.
https://stackoverflow.com/questions/13811020/error-class-x-is-public-should-be-declared-in-a-file-named-x-java
https://stackoverflow.com/questions/10442758/why-must-a-java-file-have-the-same-name-as-its-public-class