Register というメソッドがあります。どのクラス オブジェクトがこのメソッドに送信されるかを調べる必要があります。私のコードは次のとおりで、コンパイルされません。
エラーはシンボルが見つかりません
記号:クラスT
- UserTypeA と UserTypeB の 2 種類のクラスがあることに注意してください。
コード
public class UserTypeA {
private int SSN;
private int Name;
.... Getter and setters go here....
}
public class UserTypeB {
private int Name;
... Getter and setters go here ....
}
public void mymethod(){
UserTypeA usera = new UserTypeA();
usera.setName("Jack");
register(usera);
UserTypeB userb = new UserTypeB();
userb.setName("Daniel");
register(userb);
}
public void register(Class<T> type){
type.registerUser(type.getName());
}
ジャヤモハンが彼の答えで示唆したように、私は次のことを試しましたが、getName メソッドにアクセスできません。
public void register(Object obj) throws ClassNotFoundException {
if(obj instanceof UserTypeA)
{
System.out.println(obj.getName());
}