2012-01-13 7 views
1

変数型のオブジェクトを宣言するにはどうすればよいですか?私はジェネリックスを使用する必要があることを知っています。私はこのコードを書いていますが、私がしたいことが意味を成しているかどうかはわかりません。 変数型のオブジェクトを宣言し、オブジェクトコンストラクタのパラメータとしてintまたはstringのいずれかを渡したいとします。変数型のオブジェクトを宣言する方法

CityOp(String CityT, Class<?>[] par) throws ClassNotFoundException, InstantiationException, IllegalAccessException, NoSuchMethodException, SecurityException{ 
    Class<?> co = Class.forName(CityT); 
    Op.getDeclaredConstructor(par); 
} 

コードメイクセンスがない: ここで私が書いたコードはありますか?

+0

あなたはcityTを大文字にするべきではありませんが、実際にあなたがしようとしていることがわからないときは助けがありません。 – Andy

+0

あなたはC#またはjavascriptでvarのようなものを意味しますか? – tehdoommarine

+1

Stringまたはintのみを渡したい場合は、なぜCityOp(String s、String t)とCityOp(String s、int i)の2つのコンストラクタがあるのでしょうか?ジェネリッククラスを作成する場合は、Stringまたはintだけでなく、何かを受け入れる必要があります。 – Yuushi

答えて

1

質問は私には少し不明だったようです。あなたは渡すために探している場合はどちらかStringまたは最初のパラメータのint、そして次のように最初の型と一致する必要があります2番目のパラメータは、あなたは、これを達成するために、一般的なクラスを使用することができます。

public class CityOp<T> { 
    CityOp(T cityT, T[] par) throws ClassNotFoundException, InstantiationException, IllegalAccessException, NoSuchMethodException, SecurityException{ 
     // Constructor body here 
    } 
} 
関連する問題