java基础 继承

 在继承的关系中,“子类就是一个父类”,也就是说,子类可以被当父类看待。

例如父类是员工,子类是讲师,那么“讲师就是一个员工”,关系:is-a。

 

定义子类的格式:

public class 子类名称 extends 父类名称{

    //....

}

在子类的继承关系当中,如果成员变量重名,则创建子类对象时,访问有两种方式。

直接通过子类对象访问成员变量,

    等号左边是谁,就优先用谁,没有则向上找。

间接通过成员方法访问成员变量,

    该方法属于谁,就优先用谁,没有则向上找。

 

本类中的成员变量:this.成员变量名

父类中的成员变量:super.成员变量名

 1 /**
 2  * 在子类的继承关系当中,创建子类对象,访问成员方法的规则:
 3  *      创建的对象是谁,就优先用谁,如果没有则向上找。
 4  *  注意事项:
 5  *  无论是成员方法还是成员变量,如果没有都是向上找父类,绝对不会向下找子类。
 6  *
 7  *  重写(Override)
 8  *  概念:在继承关系当中,方法的名称一样,参数列表也一样
 9  *
10  *  重写(Override):方法名称一样,参数列表【也一样】。覆盖、复写
11  *  重载(Overload):方法名称一样,参数列表【不一样】
12  *
13  *  方法的覆盖重写特点,创建的是子类对象,则优先用子类方法。
14  *
15  * 方法覆盖重写的注意事项:
16  * 1、必须保证父子类之间的名称相同,参数也相同。
17  * @Override:写在方法前面,用来检测是不是有效的正确覆盖重写。
18  * 2、子类方法的返回值【小于等于】父类方法的返回值范围。
19  * 小扩展提示:java.lang.Object类是所有类的公共最高父类,java.lang.String就是Object的子类。
20  * 3、子类方法的全县必须【大于等于】父类方法的权限修饰符
21  * 小扩展提示:public > protected > (default) > private
22  * 备注:(default)不是关键字,而是什么都不屑,留空
23  *
24  */

 

posted @ 2019-10-15 21:35  mantishell  阅读(106)  评论(0编辑  收藏  举报