javaでジェネリッククラスを定義するには、同じ基本クラスを共有するカスタムデータ型を使用してインスタンス化する必要があります。実行時にデータ型をチェックせずに行うことは可能ですか?さらに、私は、データ型を提供せずにジェネリッククラスをインスタンス化することを禁止したいと思います。定義済みのデータ型のみをサポートするJavaジェネリック
編集: 私はC++ライブラリ用のJavaラッパーを作成しています。そのため、Javaクラスでは、C++データ型のラッパークラスのみをパラメータとして許可する必要があります。示唆したように私は、有界型パラメータを使用してみましたが、その後、私はまだこのようなオブジェクトをインスタンス化することができます
MyClass c = new MyClass();
これは基本的にコードです:あなたは他の人が作成について心配している場合は
public class MyClass<T extends MyType>
{
public MyClass()
{
}
public doSomething(MyOtherClass<T> other)
{
}
}
下記の回答を見ると、私はこの質問がちょっとした精緻化や例を使うことができると思います。 –
これはジェネリックの質問ではなく、継承と多型に関連しています。これらの概念を見て、Javaでどのように動作するかを調べます。 –
public myAddition(ピザa、ピザb){ \t \t int temp = 0; \t \t temp = a + b; <エラー - ********* \t \t System.out。println( "加算値は" + temp)です。 \t} \t \tパブリック静的無効メイン(文字列[] args){ \t \t DDHGenericのTEMP =新しいDDHGeneric()。 \t \t temp.myAddition(new Integer(5)、4); \t} データ型が事前にわからなくても加算演算子を使用できる方法はありますか。この追加で整数を追加できるようにしたいので、+演算子でエラーが発生します。 –