[英]calling main method inside main in java
我們可以在main中調用main方法嗎?
public static void main(String[] args) {
main({"a","b","c"});
}
試圖google.Can't找不到鏈接。 對不起,如果這個問題很簡單
您可以使用正確的格式
main(new String[] {"a","b","c"});
應該給StackOverFlowError(未測試)
您將獲得StackOverFlowError
。 如果你調用無限遞歸調用/深度函數遞歸。
在發生堆棧溢出時拋出,因為應用程序過於嚴重。
你需要傳遞String數組
main(new String[] {"a","b","c"});
您可以。 這非常合法。
此外,它不一定給出StackOverFlowError:
public static void main(String args[]){
int randomNum = (int)(Math.random()*10);
if(randomNum >= 8)
System.exit(0);
System.out.print("Heyhey!");
main(new String[]{"Anakin", "Ahsoka", "Obi-Wan"});
}
只是說。
Kugathasan是對的。
是的,它確實給出了StackOverflow Exception。 我現在在Eclipse中測試它。
class CallingMain
{
public static void main(String[] args)
{
main(new String[] {"a","b","c"});
}
}
我有一個建議,我認為消除混淆的最好方法是嘗試編碼並運行它。 有很多疑惑。
你可以簡單地傳遞像main(new String[1])
這樣的參數 - 這一行將調用你程序的main方法。 但是如果你傳遞“ new String[-1]
”,這將給出NegativeArraySizeException。 這里我給出了一個嵌套內部類的例子,我在這里調用Main方法:
class Outer
{
static class NestedInner
{
public static void main(String[] args)
{
System.out.println("inside main method of Nested class");
}//inner main
}//NestedInner
public static void main(String[] args)
{
NestedInner.main(new String[1] );//**calling of Main method**
System.out.println("Hello World!");
}//outer main
}//Outer
輸出: - 嵌套類的主要方法
你好,世界!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.