Package 패키지명;
import 클래스명;
class 클래스명{
public static void main(String[] args){
int a = 10; //멤버변수
}
}
먼저 public은 접근 제어자로 접근 제어자는 외부에서 접근할 수 있는 일종의 제약을 정해놓은 것이다.
모든 클래스에서도 해당 변수나 메서드가 접근이 가능하다는 의미로 프로그램의 시작은 main이기 때문에 다른 곳에서도 호출할 수 있도록 public을 사용한다.
static(정적)은 자바가 compile이 되는 순간 가장 빠르게 정의되어 별도의 객체 생성 없이 모든 객체와 공유가 가능하다.
void는 실행한다는 뜻, 별도로 return 값 없이 실행하고 끝난다는 의미이다.
main은 이 메서드가 main 메서드라는 의미이다.
string[] args는 연속적인 문자열 데이터가 들어가는 저장 공간이다.
> main 메서드가 없을 때
컴파일 할 때 아무런 옵션을 주지 않으면 프로그램은 알아서 main 메서드를 찾아 진입점으로 인식하기 때문에 main 메서드가 없으면 에러가 생긴다.
진입점 없는 라이브러리 형태의 프로그램을 작성하고자 할 때는 컴파일 할 때 옵션에 /reference를 사용하여 라이브러리 형태라는 것을 명시해 주어야 에러가 발생하지 않는다.
> main 메서드가 여러개 있을 때