2015-09-11 4 views
6

私はJavaで、クラスジェネリックとメソッドジェネリックを作ることができることを見てきました。私はまた、クラスと一緒にコンストラクタを一般化するコードを見てきました。コンストラクタのみを汎用にすることはできますか?そして、そうならコンストラクタを呼び出す方法は?クラスをジェネリックにすることなく、コンストラクタをジェネリックにすることはできますか?

+1

http://stackoverflow.com/questions/32304427/why-is-it-wrong-to-supply-type-parameter-in-the-constructor-of-a-generic-class/32304725# 32304725 – ZhongYu

+1

非ジェネリッククラスへのジェネリックコンストラクタを作成したいのはなぜですか?または、より一般的には、なぜそのようなコンストラクタが可能です。 – Pshemo

+0

@Pshemo - コンストラクタはメソッドと似ていますが、どうしてそれは一般的ではありませんか?:) – ZhongYu

答えて

4

はいできます。

class Example { 

    public <T> Example(T t) {} 

    public static void main(String[] args){ 

     // In this example the type can be inferred, so new Example("foo") 
     // works, but here is the syntax just to show you the general case. 
     Example example = new<String>Example("foo"); 
    } 
} 
+0

ありがとう@Paul Boddington ....ちょっと考えましたが、構文についてはわかりませんでした。 – Birendra

+0

@Birendra私もどちらか分かりませんでした。私はそれが可能であることを知っていたし、少しの実験の後に私はそれを管理しました!私は決してこれを行う理由を見たことがない。 –

+0

あなたは 'new Example(" foo ")' – wero

関連する問題