CustomList <T扩展A>类型不匹配

Art*_*Rey 0 java android extends arraylist type-mismatch

第一个问题在这里修复,但它带来了另一个,我更喜欢创建一个新线程.

我有一个CustomList<T extends A>将与使用Class A1和Class A2,既舒展Class A.

我有一个Class B包含CustomLists:

public Class B
{
    CustomList<A1> listA1 = new CustomList<A1>();
    public CustomList<A1> getListA1(){ return listA1;}
}
Run Code Online (Sandbox Code Playgroud)

每当我尝试做的时候

for(A1 obj : myBClass.getListA1())
{
    /*Do something*/
}
Run Code Online (Sandbox Code Playgroud)

我得到了Type mismatch : cannot convert from element type A to A1.,因为getListA1()返回一个,我没有得到它CustomList<A1>.我想这可能是因为CustomList<T extends A>.

Dmi*_*off 6

第一:

class CustomList<T extends A> extends ArrayList<T>
Run Code Online (Sandbox Code Playgroud)

第二:

class A {
    public boolean getCustomBoolean() {
        return true;
    }
}
Run Code Online (Sandbox Code Playgroud)

第三:

class A1 extends A {
}
Run Code Online (Sandbox Code Playgroud)

结果:

CustomList<A1> customList = new CustomList<A1>();
customList.add(new A1());

for (A1 obj: customList) {
    System.out.println(obj.getCustomBoolean());
}
Run Code Online (Sandbox Code Playgroud)

印刷品:真实