나는 java에서 큽니다. 나는 자바와 잘 지내고있다. 문제는 java에서 main 함수를 main (String args)으로 선언 할 때입니다. 나는 bluej와 함께 배우고있다. 그냥 main()이라고 쓰면 괜찮 았어. 두 가지의 차이점은 무엇입니까?main()과 main (String args [])의 차이점
답변
public static void main(String[] args
은 java
도구와 표준 IDE 등이 Java 응용 프로그램의 주 클래스를 찾는 진입 점입니다 (final
일 수 있습니다). 매개 변수 선언 (String[] args
)을 포함하지 않으면 서명이 java
도구의 예상과 일치하지 않으므로 작동하지 않을 수 있습니다.
main()
는 그냥 방법이기 때문에 ,를 컴파일하지만, 그 규칙을 다음 java
도구 및 기타 도구를 작동하지 않습니다.
BlueJ에서 매개 변수 선언을 그대로 둘 수 있으면 BlueJ 도구에만 해당되는 동작입니다.
그래서 예를 들어,이 잘 컴파일 :
public class Example {
public static void main() {
System.out.println("Hi");
}
}
그것은 main
라는 메소드를 사용하여 Example
클래스에 컴파일합니다. 당신이 java
도구를 통해 것을 실행하려고한다면 :
$ java Example Error: Main method not found in class Example, please define the main method as: public static void main(String[] args) or a JavaFX application class must extend javafx.application.Application
가 java
도구와 호환되도록하려면 매개 변수가 필요합니다.
왜 bluej 함께 작동 –
마지막 부분에 감사합니다 Logged –
@AkashJaiswal : "it worked"를 정의해야합니다. 나는 방금 내가 대답에서 중요한 것을 남겨두고 업데이트했다는 것을 깨달았다. 'main()'은 단지 다른 메소드이기 때문에 * 컴파일 할 것이다. main 메소드의 서명에 대한 규칙을 따르는'java' 툴이나 다른 툴에서는 작동하지 않을 것이다. 그래서 "일했다"는 것이 당신이'main' 메소드를 실행했다는 것을 의미한다면, 표준이 아닌 BlueJ입니다. "일했다"면 컴파일 된 것을 의미합니다. 글쎄, 그건 단지 컴파일하는 것입니다. –
- 1. main (String [] args) 다른 String [] args = {.....}?
- 2. C# static Main (string [] args)
- 3. public static void main (String args [])
- 4. C#의 static void main (string [] args)과 static void main()의 차이점은 무엇입니까?
- 5. String doInBackground (String ... args) 사용
- 6. args (string [])에 문자열
- 7. data()와 string()의 차이점
- 8. main (String args [])을 코드 하단에 두는 이유는 무엇입니까?
- 9. 어디에서 "public static void main (String [] args)"을이 프로그램에 넣어야합니까?
- 10. public void main (String [] args) 잘못된 java 기본 메서드 서명입니까?
- 11. static void Main (string [] args)을 변경할 수 없습니다.
- 12. Java main() 메서드가 String args 배열을 허용하는 이유는 무엇입니까?
- 13. main (String [] args) 클래스가 실제로 Java에서 어떤 클래스에 있습니까?
- 14. public static void main (String [] args) 메서드는 어디에 두어야합니까?
- 15. String [] args 매개 변수 : java.lang.ArrayIndexOutOfBoundsException
- 16. String.valueOf()와 new String()의 차이점
- 17. Error : Main 메서드를 Text 클래스에서 찾을 수 없습니다. main 메서드를 다음과 같이 정의하십시오. public static void main (String [] args)
- 18. Java : String [] 인수를 사용할 때 문자열 args []
- 19. 스레드 "main"의 예외 java.lang.UnsatisfiedLinkError : RunnerClass.parsecmdline (ILjava/lang/String;) V
- 20. 스레드 "main"의 예외 java.lang.NumberFormatException : empty String FloatingDecimal & parseDouble
- 21. args 변수의 최대 및 최대 차이점
- 22. 스레드 "main"의 예외 java.lang.NoSuchMethodError : main-code
- 23. `public static <T> void main (String [] args)`이 의미하는 것은 무엇입니까?
- 24. 차이점 a [] = "string"; char * p = "string";
- 25. (string [] args)와 System.Environment.CommandLine의 차이점은 무엇입니까?
- 26. Visual Studio에서 여러 프로젝트를 실행하려고 할 때 Main (string [] args)을 통해 인수를 전달하려면 어떻게해야합니까? (문자열 [] args) VS
- 27. 스레드 "main"의 예외 java
- 28. 스레드 "main"의 예외 java.util.InputMismatchException
- 29. .aspx 대 .ashx MAIN 차이점
- 30. 스레드 "main"의 예외 java.lang.Error
확실히 'String [] args'를 포함하지 않고 선언 할 수 있으며 컴파일이 잘되지만 실행하면 오류가 발생합니다. 주 진입 점에는 해당 서명이 포함되어야합니다. – Orin
"main()"이라고 쓰면 괜찮습니까? 당신의 코드가 * 컴파일되거나 * main() 메소드 안에 코드를 * 실행할 수 있다는 것을 의미합니까? – Pshemo
@pshemo 컴파일시 문제가 없다는 것을 의미합니다. –