2013-07-20 25 views
-6
class Base 
{ 
    int x; 
    int y; 
    void show() 
    { 
     System.out.println(x); 
     System.out.println(y); 
    } 
} 
class Child extends Base 
{ 
    void get(int x,int y) 
    { 
     this.x=x; 
     this.y=y; 
    } 

    public static void main(String[] args) 
    { 
     Child c1=new Child(); 
     c1.get(10,20); 
     c1.show(); 
    } 
} 

請糾正這個問題..我不明白類基本沒有發現主要方法

+0

顯然,你嘗試運行沒有主要方法的類「Base」。問題是什麼? – Juvanis

+3

嘗試運行'java Child'! – NINCOMPOOP

+0

我在哪裏寫主要方法...請糾正我的問題..我想任何關閉brasec創建錯誤 – user2601676

回答

1

如果你想運行的基類,你應該(之前的文件Base.java,並刪除文件Child.java ...)創建一個類基地和寫這裏面:

package my.stuff; 

class Child extends Base 
{ 
    void get(int x,int y) 
    { 
     this.x=x; 
     this.y=y; 
    } 


} 

public class Base 
{ 
    int x; 
    int y; 
    void show() 
    { 
     System.out.println(x); 
     System.out.println(y); 
    } 

    public static void main(String[] args) 
    { 
     Child c1=new Child(); 
     c1.get(10,20); 
     c1.show(); 
    } 
} 
4

類基本沒有發現主要方法

這是因爲Base不沒有main()方法;只有Child呢。因此,java Base將不起作用,而java Child將(假設沒有其他問題)。

如果您需要能夠運行java Base,那麼Base必須具有main()方法。

1

main()方法是在Child類中,而不是在Base類中。

要解決,只需運行使用java Child程序,而不是java Base

1

Base類沒有主要方法。

此外,即使它做了,您也無法覆蓋它,因爲它是靜態的。

1

基本類中不是主要方法。你在基類中編寫主要方法。

0

首先,在單個文件中只能有一個公共類,並且該文件名必須與文件名相同。當你執行一個Java程序時,你可以通過java MyClass來完成。 Java解釋器將嘗試在指定的Class文件(本例中爲MyClass)中找到具有簽名public static void main(String arg)的方法。

現在在您的代碼中,您似乎正在調用java Base,並且java解釋器無法找到main()方法在這個類(基地)。所以很顯然你會得到在類Base錯誤中找不到的Main方法。我建議將你的main()方法移動到Base類。