Java – 如何子类化通用的ArrayList,使MyArrayList的实例将成为ArrayList的子类?

前端之家收集整理的这篇文章主要介绍了Java – 如何子类化通用的ArrayList,使MyArrayList的实例将成为ArrayList的子类?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想保留我的子类通用,所有我想要改变的是ArrayList的add(Object)方法,以便在调用arrayList.add(null)时不添加任何东西(ArrayList的正常实现将会添加null ;我想让它什么都不做)

解决方法

在这种情况下,您应该优先于继承的组合,因为如果您忘记覆盖ArrayList中添加/更改元素的一种方法(例如,您可以忘记覆盖集合),那么仍然可以使用空元素.

但是由于问题是关于如何子类化ArrayList,所以你可以这样做:

import java.util.ArrayList;

public class MyArrayList<T> extends ArrayList<T> {
    public boolean add(T element) {
        if (element != null) return super.add(element);
        return false;
    }
}

猜你在找的Java相关文章