使用扩展 ArrayList 的 T 类中的方法

2024-02-14

不知道标题是否有意义,我会尝试解释一下。我有一个扩展 ArrayList 的 CustomList,T 是 A1 类和 A2 类,两者都扩展了 A 类,这是一个自定义类。

我需要这样做:

public class CustomList<T> extends ArrayList<T>
{
    public CustomList()
    {
        super();
    }

    public boolean add(T obj)
    {
        /*The method getCustomBoolean() is not defined for the type T*/
        if(obj.getCustomBoolean())
        {
            super.add(obj);
        }

        return true;
    }
}

方法getCustomBoolean() is a Class A方法,并且仅使用此 CustomListA1 and A2, 我敢肯定obj.getCustomBoolean()不会引起异常。

我需要一种方法来指定 T 是 A 的子类。


将类的第一行更改为此。

public class CustomList<T extends A> extends ArrayList<T>

这指定了T可以是任何类型的子类型A。它将允许您使用类型的方法A在你的T对象,在你的类的代码中。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用扩展 ArrayList 的 T 类中的方法 的相关文章

随机推荐