例如,我有两个班级; a.java和b.java。 a.java是一个空类,并扩展了java.util.ArrayList。
当我从b.java中的a.java创建一个对象时,我是否有像下面的示例arraylist对象一样的对象?如果没有,有什么区别?
ArrayList<String> sample= new ArrayList<String>();
我试图弄清楚继承的逻辑及其各种用法。 谢谢你的回答。
答案 0 :(得分:2)
当你扩展一个类(在这种情况下是ArrayList
)时,你必须在子类的构造函数中做的第一件事就是像这样调用基类的构造函数:
import java.util.ArrayList;
public class Foo<T> extends ArrayList<T> {
public Foo() {
super();
}
}
因为基类是ArrayList
,所以这样做:
Foo<String> dummy = new Foo<String>();
相当于:
ArrayList<String> sample= new ArrayList<String>();
可以使用变量dummy
调用ArrayList上的所有函数。
在许多用例中使用继承可能很有用: