Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用自定义方法创建自定义arraylist_Java_Oop_Arraylist - Fatal编程技术网

Java 如何使用自定义方法创建自定义arraylist

Java 如何使用自定义方法创建自定义arraylist,java,oop,arraylist,Java,Oop,Arraylist,我在一次采访中被问到这个问题 除了remove,removeAll()方法之外,如何使用ArrayList中实现的所有方法创建自定义ArrayList 因此,我的ArrayList实现不能有这两种方法 我得到的一个解决方案是将类扩展到ArrayList类,并实现除remove()和removeAll()方法之外的所有方法 我不确定这是否正确。搜索可扩展数组(数据结构)。你将得到完整的细节和如何做到这一点 您可以扩展ArrayList并覆盖指定的方法,如不支持的方法。他们只会扔东西,而不会扔其他东

我在一次采访中被问到这个问题

除了
remove
removeAll()
方法之外,如何使用
ArrayList
中实现的所有方法创建自定义
ArrayList

因此,我的
ArrayList
实现不能有这两种方法

我得到的一个解决方案是将类扩展到
ArrayList
类,并实现除
remove()
removeAll()方法之外的所有方法


我不确定这是否正确。

搜索可扩展数组(数据结构)。你将得到完整的细节和如何做到这一点

您可以扩展
ArrayList
并覆盖指定的方法,如不支持的方法。他们只会扔东西,而不会扔其他东西

类NoRemoveArrayList扩展了ArrayList{
@凌驾
公共对象删除(int i){
抛出新的UnsupportedOperationException();
}
@凌驾
公共布尔删除(对象o){
抛出新的UnsupportedOperationException();
}
@凌驾
公共布尔removeAll(集合){
抛出新的UnsupportedOperationException();
}
}

为了澄清,我假设您的解决方案是创建一个类(例如,
MyCustomArrayList
),该类扩展
ArrayList
,然后覆盖
remove()
removeAll()
方法。(如果该假设不准确,请纠正我)。如果是这样,这似乎是一个很好的解决方案。您是否正在寻找其他解决方案?这是我所想的解决方案,但面试官特别希望我的自定义ArrayList不包含这些方法。是否允许您修改
ArrayList
类?是否需要专门为
ArrayList
类划分子类?如果您的类型是
List
ArrayList
,然后,您将拥有
remove
removeAll
方法使用这些方法时,必须完全不存在,并且不能在调用时简单地抛出一些异常。唯一的方法是创建自己的
ArrayList
,它不实现
List
(或
Collection
)。