공부 자료/자바[JAVA]
[JAVA] main 메서드 매개값 String[] args (자바 커멘드라인 입력)
희희웃는청바지
2023. 8. 17. 16:30
public static void main(String[] args)
static
: 프로그램이 실행되는 순간 메모리가 할당되며, Garbage Collector에 의한 메모리 정리 대상이 아님
: 따라서 static을 사용하여 메모리에 항상 상주하도록 설정해야 함
String[] args
: args 문자열을 배열로 사용한다는 의미
: main 함수는 프로그램 실행 시 처음으로 수행되는 함수이기 때문에 외부로부터 값을 입력받을 수 있어야 하며, 내부에서 값을 호출할 수 없음
: 위와 같은 이유 때문에 main이 시작되기 전에 데이터를 입력받는 스레드가 필요하며, 이를 위해 JDK는 JVM이 클래스 파일을 처리하기 전 커맨드 라인을 통해 데이터를 사용자로부터 입력을 받음
: JDK는 사용자가 main에게 넘겨주고 싶은 데이터를 배열로 만들어 Heap 영역에 저장하고 배열 주소를 args에 저장
외부로부터 값을 입력받기 위해서 IDE에서는 아래와 같이 하면 됨
Edit(Run/Debug) Configurations >> arguments 에 값을 입력하면 실행이 가능