2011-04-22 37 views
0

これは?:法的クラスと同じ名前のメソッドが戻り値の型を必要としないのはなぜですか?

public class TwoFrames extends JFrame { 
    public TwoFrames() { 
     return; 
    }; 
} 

であり、これは(NetBeans IDEには、無効なメソッド宣言を言って、戻り値の型がを必要と)されていないのはなぜこれが実際にある?:

public class TwoFrames extends JFrame { 
    public firstFrame() { 
     return; 
    }; 
} 
+0

今すぐクリアしてください。私はあなたのような人々の大きなインプットで、この言語を後ですぐに取り除くでしょう。どうもありがとうございました! –

答えて

1

これはコンストラクタです。オブジェクトが初期化されると呼び出されます。例:通常の方法コンストラクタとは異なり

TwoFrames twoFrames = new TwoFrames();

は、任意の値を返しません。それはなぜでしょうか?

また、コンストラクタは、クラスとしてと同じ名前がである必要があります。

希望すると、これが役立ちます。

4
public class TwoFrames extends JFrame { 
    public TwoFrames() { 
     return; 
    }; 
} 

constructor。コンストラクターの宣言はメソッドのように見えますが、戻り値の型はありません。厳密に言えば、メソッドではありませんが、時には "コンストラクタメソッド"が聞こえるかもしれません。

2

クラスと同じ名前のメソッドは、クラスのオブジェクトが作成されるときに呼び出されるコンストラクタです。

名前が異なるメソッドは、無効の場合でも戻り値の型を持たなければなりません。

0

戻り値の型はありますが、名前はありません。これは、クラスのインスタンスとインスタンスを返すためです。 newキーワードを使用すると、このメソッドで囲まれたものが呼び出されます。

関連する問題