public static void main(String[] args)
java.exe로 JVM을 구동시키면 제일 먼저 main()메소드를 찾아서 실행시킨다.
*그렇기 때문에 main메소드 이름을 바꾸면 안됨
main()메소드를 프로그램 실행 진입점 entry point라 한다
1.public은 접근제어자. main에서 시작해 끝나므로 다른 곳에서 접근을 허용하지 않는다면 의미가 없기 때문에 public으로 지정한다
2.static은 프로그램이 시작하면서 따로 인스턴스 하지 않아도 static으로 선언된 것들은 메모리에 호출되서 프로그램이 종료되는 시점까지 계속 유지가 된다.
다른 변수, 메소드, 클래스 경우 목적을 끝낸 후 JVM의 Garbage Collector에 의해 메모리에서 삭제된다. main 메소드가 일정 시간만 살아있으면 곤란하므로 종료되는 시점까지 유지되는 static을 사용
3.void는 메소드에 return 값이 없다. 어떤 계산에 의한 값의 반환이 있다면 프로그램 종료 되기 전에 이루어져야하고 그 값 역시 프로그램이 종료되기 전 사용해야 정상적인 것이므로 프로그램 시작과 끝이 함께하는 main 메소드에는 변환값이 없는 void가 필요하다
4.String[] args
이클립스보다 커맨드라인CMD에서 쓰기 위한 목적으로 사용
프로그램의 실행 순간 외부값을 가져와서 프로그램 안에 사용하고자 할 때
메모리에 저장할 공간을 미리 선언해 두는 것이라고 할 수 있다.
참고
https://m.blog.naver.com/PostView.nhn?blogId=crazydeicide&logNo=130114957734&proxyReferer=https%3A%2F%2Fwww.google.co.kr%2F
http://javacpro.tistory.com/11
'Study > Java' 카테고리의 다른 글
[Java] 제네릭 (0) | 2023.02.01 |
---|---|
JVM 명세 - Run-Time Data Areas (0) | 2022.06.25 |
자바로 간단한 http 웹 서버 구현 (0) | 2022.06.11 |
간단한 자바 TCP 통신 구현 (0) | 2022.06.02 |
자바 빌더 패턴 Java Builder Pattern (0) | 2022.05.31 |