2016-06-21 46 views
-3

我想使用E類擴展類Test1,我只想顯示一條消息。請修復簡單的Java代碼中的錯誤

class Test1 
{ 
public static void main(String[] args) 
{ 
    E e = new E(); 
} 
} 
class E extends Test1 
{ 
    System.out.println("Hello World!"); 
} 

我得到這些錯誤:

Test1.java:10: <identifier> expected 
     System.out.println("Hello World!"); 
         ^
Test1.java:10: illegal start of type 
     System.out.println("Hello World!"); 
         ^
2 errors 
+0

你知道這是什麼錯誤意味着什麼?你爲解決這個問題付出了多少努力? – kosa

+0

E類擴展Test1 @ public E(){ System.out.println(「Hello World!」);} } – SMA

+3

@PeterRader號。他的輸出不在方法/構造函數中 – Li357

回答

2

您的E類缺少構造函數。

class Test1 
{ 
public static void main(String[] args) 
{ 
    E e = new E(); 
} 
} 
class E extends Test1 
{ 
    public E(){ 
    System.out.println("Hello World!"); 
    } 
} 

OR E級應該有實例塊

class Test1 { 
    public static void main(String[] args) { 
     E e = new E(); 
    } 
} 
class E extends Test1 { 
    { 
    System.out.println("Hello World!"); 
    } 
} 
+4

它實際上只是缺少一對大括號。 –

+1

@MarkoTopolnik正如Marko所說,只需要一對大括號。編譯器添加了默認的構造函數 – Li357

+0

@MarkoTopolnik這會帶來將代碼添加到類中的每個構造函數的副作用。如果他們添加更多custructors,那可能會出乎意料。 – 4castle