본문 바로가기
컴퓨터/자바

[JAVA] New Java Class 를 만들 때 public static void main[] args 에 체크해야 하는 이유 (feat. inherited abstract methods)

by Rachel Jeong 2025. 3. 3.

출처: 픽사베이

public static void main(String[] args) 메서드는 Java 애플리케이션의 진입점(entry point)입니다.

이 메서드는 Java 애플리케이션을 실행할 때 가장 먼저 호출되는 메서드입니다.

 

Java에서 new Java class를 만들 때 public static void main(String[] args)에 체크를 하는 이유는 다음과 같습니다.

 

  1. 애플리케이션 실행 가능하게 만들기: main 메서드는 Java 애플리케이션을 실행할 수 있는 진입점을 제공합니다. 이 메서드가 포함된 클래스는 java 명령어를 통해 실행할 수 있습니다. 이 메서드가 없으면 클래스는 실행되지 않습니다.
  2. 콘솔 애플리케이션 실행: public static void main(String[] args) 메서드는 콘솔 애플리케이션을 실행할 때 필요한 기본 틀입니다. args는 명령줄 인수를 받을 수 있는 배열로, 이를 통해 외부 입력을 처리할 수 있습니다.
  3. 자동 생성의 편리함: 클래스에 main 메서드를 체크해두면, IDE (Eclipse, IntelliJ 등)에서 클래스 생성 시 main 메서드가 자동으로 추가되기 때문에, 별도로 main 메서드를 작성할 필요가 없어 편리합니다.

main 메서드의 역할

  • public: 메서드가 클래스 외부에서도 호출될 수 있도록 공개 접근을 허용합니다.
  • static: 객체를 생성하지 않고 메서드를 호출할 수 있게 합니다. main 메서드는 객체 생성 없이 실행되기 때문에 static으로 선언해야 합니다.
  • void: 메서드가 값을 반환하지 않음을 의미합니다.
  • String[] args: 명령줄 인수를 배열 형태로 받습니다. 이를 통해 프로그램에 입력된 값을 처리할 수 있습니다.

결론적으로, public static void main(String[] args)에 체크를 하는 이유는 프로그램을 실행할 수 있도록 main 메서드를 자동으로 포함시키기 위함입니다.

 

inherited abstract methods 체크박스에 체크하고 넘어갈지 여부는 현재 클래스에서 추상 메서드를 구현할 계획이 있는지에 따라 다릅니다.

체크박스에 체크할 때:

  • 추상 메서드를 구현하지 않으려면, 클래스가 추상 클래스로 선언됩니다. 이 경우, 해당 클래스는 추상 메서드를 반드시 구현하지 않아도 됩니다.
  • 즉시 추상 메서드를 구현할 계획이 없다면, 체크박스를 활성화하여 클래스가 abstract로 생성되게 하고 넘어가면 됩니다. 이때 클래스는 추상 클래스가 되어, 추상 메서드를 구현하지 않아도 컴파일 에러가 발생하지 않습니다.

체크박스를 체크하지 않을 때:

  • 추상 메서드를 바로 구현할 계획이 있다면, 이 체크박스를 체크하지 않고, 생성 후 해당 추상 메서드를 구현합니다.
  • 추상 메서드를 구현할 필요가 없다면, 이 경우에는 체크박스를 체크할 필요 없이 바로 클래스 생성만 진행할 수 있습니다.

결론:

  • 추상 메서드를 구현하지 않으려면 체크박스를 체크해서 클래스를 abstract로 만들어 주세요.
  • 추상 메서드를 구현할 예정이라면 체크박스를 체크하지 않고, 클래스를 구현한 후에 추상 메서드를 직접 구현하면 됩니다.

그러니까, 추상 메서드를 구현할 계획이 없다면 체크박스를 체크하고 넘어가도 괜찮습니다.