一、继承中的构造方法
子类的构造的过程中必须调用其基类的构造方法
子类可以在自己的构造方法中使用super(argument_list)调用基类的构造方法。使用this(argument_list)调用本类的另外的构造方法。
调用super()必须卸载子类构造方法的第一行。
如果子类的构造方法中没有显示地调用基类构造方法,则系统默认调用基类无参数的构造方法。
如果子类构造方法中既没有显示调用基类构造方法,而基类中又没有无参的构造方法,则编译出错。
举例:
class A{
protected void print (String s){
System.out.println(s);
}
A(){print("A()");}
public void f() {print("A:f()");}
}
class B extends A{
//由于没有父类的构造方法,所以默认父类无参的构造方法
B(){print("B()");}
public void f() {print("B:f()");}
public static void main(string arg[]){
B b = new B();
b.f();
}
}
打印顺序:①A() ②B()③B:f()
二、Object类
是所有java类的根基类
如果在类的声明中未使用extends关键字指明其基类,则默认基类为Object类
public class Person{
...
}
//等价于
public class Person extends Object{
...
}
三、抽象类
abstract关键字来修饰的类
当一个类中有抽象方法的时候,这个类必须是抽象类
抽象类必须被继承,抽象方法必须被重写

1145

被折叠的 条评论
为什么被折叠?



