JAVA类的继承学习笔记
JAVA类的继承学习笔记——稻草人
学习资料:《Java就业培训教程》
?
Java类继承的特点1.Java只支持单继承,不允许多继承,一个子类只能有一个父类,不允许一个类直接继承多个类,但一个类可以被多个类继承,,即是类X不可以既继承类Y又继承类Z。
2.可以有多继承,如:类B继承了类A,类C又可以继承类B,那么类C也间接继承了类A。
3.子类继承父类的所有成员变量和成员方法,但不继承父类的构造方法(构造方法是特殊的成员方法,他与类名相同,不返回结果也不加void返回值)。
4.在子类的构造方法中可以使用super()调用父类的构造方法,如下:
?
子类对象实例化过程1.分配成员变量的存储空间,并进行默认的初始化,就是用new关键字产生对象以后,对成员变量用相应的关系对对象中的成员变量进行初始化赋值。
2.绑定构造参数。
3.如果有this()调用,则调用相应的重载构造方法,(被调用的冲在构造方法又从步骤2开始执行这些流程),被调用的重载构造方法结束后回到当前的构造方法,然后直接跳到步骤6执行。
4.显式或隐式追溯调用父类的构造方法(一直到Object类为止,Object是所有Java类的最顶层父类),父类的构造方法又从步骤2开始对父类执行这些流程,父类构造方法执行结束后,回到当前的构造方法,当前构造方法继续往下执行。
5.进行实例变量的显式初始化,也就是执行在定义成员变量时就对其进行赋值的语句。String school = "NIT";
?6.执行当前构造方法的方法体里面的程序代码。
?
覆盖父类的方法*覆盖的方法必须和被覆盖的方法具有相同的方法名称,参数列表和返回值类型。
?
*覆盖方法时,不能使用比父类中被覆盖的方法更加严格的访问权限。