2016-09-21 7 views
1

私はこのタイプTのインスタンスを手動で作成する方法は?

public interface ScreenObject<PK> extends ScreenRenderable { 

    public PK getPrimaryKey(); 
    public String getTypeName(); 
} 

は、どのように私は、このオブジェクトを手動でインスタンスを作成するのですか?私は試しました

ScreenObject<PK> p2 = new ScreenObject<PK>("hello", "world"); 

しかし、これは動作しません。 アドバイスをしてください!前もって感謝します。

+1

「ScreenObject」はインターフェイスです。インスタンス化することはできません。あなたはそれを実装するクラスを見つけるか、それを自分で実装します。 – dejvuth

+0

そして、 'PK'は型パラメータです。あなたが必要とする型引数を指定する必要があります。あなたはまた、適切なコンストラクタを呼び出す必要があります... –

答えて

0

インターフェイスのオブジェクトを作成することはできません。オブジェクトを作成するには、実装クラスを提供し、すべての抽象メソッドを実装する必要があります。あなたはこの

public class ImplClass<PK> implements ScreenObject<PK> { 

     // create a constructor with two String arguments 

     public ImplClass(String obj1, String obj2) { 
      //write your logic 
     } 

     // Do all the implementations for the abstract classes. 
} 

ような何かを行う必要があり、あなたの質問から

次に、あなたは

ScreenObject<Type Parameter> p2 = new ImplClass<> ("Hello", "World"); 

してインスタンスを作成できるインターフェイス

ノートについての詳細を理解するためのhereを参照してください:PKですジェネリックコードを書くための型パラメータ。詳細については、hereを参照してください。

関連する問題