继承

2018-01-13  本文已影响0人  小_小_程序猿

继承初步

        在代码中继承使用的关键字是extends,如果一个类通过extends关键字继承了其他类,那么就可以说,当前类是其他类的子类,或者其他类是当前类的父类

注意:

1.在创建子类对象的时候,会首先自动调用父类的构造方法,这里是为了初始化父类的成员变量。

2.父类中的【非私有化】成员变量,子类可以通过继承之后得到使用的权限

3.父类中的【非私有化】成员方法,子类可以通过继承之后得到使用的权限

4.在父类中用private修饰的私有化成员方法,这个私有化成员方法不能通过继承该类的子类对象来调用原因:      私有化的成员方法,只能在当前类的内部使用,外部没有任何使用权限

5.父类中用private修饰的私有化成员变量,这个私有化的成员变量不能通过继承该类的子类对象来调用,因       为私有化的成员变量,只能在当前类的内部使用,外部没有任何使用权限

super关键字

 子类在创建对象时候,首先会自动调用父类的构造方法

super 是调用父类构造方法的关键字

super关键字的注意事项:

1. super关键字可以在子类中直接调用父类的成员方法

2. 【重点】使用super调用父类的构造方法:

super(实际参数);

Java编译器会根据不同的参数类型,来调用不同的父类中的构造方法

3. 使用super关键字调用父类的构造方法的时候,要求必须当前代码块的第一行

4. this关键字调用构造方法,和super关键字调用构造方法,不能同时出现在一个代码块里面

5. 在子类的构造方法中,如果没有通过super指定调用父类的构造方法,那么Java编译器会帮我们

自动调用父类的无参构造方法来使用。

[建议]存在继承关系下, 父类中最好提供一个无参的构造方法供子类使用

this关键字调用构造方法的格式:

1. this(实际参数)  Java编译器会根据不同的参数类型,来调用不同的构造方法

2. 如果用this调用构造方法,必须在当前代码块的第一行

3. this关键字调用构造方法的时候,不能相互调用

重写

  子类中存在和父类同名,同参数,同返回值的方法,这种情况称之为【重写】

  通常会使用【注解】@Override 开启严格的重写检查

  如果父类中没有这个方法,使用@Override检查会报错

上一篇下一篇

猜你喜欢

热点阅读