Genericについて学習し始めました。ここでは、グローバルobjの値をローカルobjの値に設定しようとしています。しかし、型変換エラーが発生しました。このエラーの原因は何ですか?ここで汎用型の型変換エラー
class GenUpperBound<T>
{
T obj;
public <T extends Number> void set(T obj)
{
this.obj=obj;
}
public static void main(String...q)
{
GenUpperBound<Integer> w=new GenUpperBound<>();
w.set(10);
}
}
は誤りです....
GenupperBound.java:6: error: incompatible types: T#1 cannot be converted to T#2
this.obj=obj;
^
where T#1,T#2 are type-variables:
T#1 extends Number declared in method <T#1>set(T#1)
T#2 extends Object declared in class GenUpperBound
1 error