• 继承性


    ## 继承性

    1。继承是多态的前提,如果没有继承就没有多态;

    2.继承解决的问题:共性抽取

    3.子类可以拥有父类的内容,也可以拥有自己的内容

    4.在继承关系中“子类就是一个父类”,子类可以被当作父类;父类是员工,子类是技术工,那么技术工就是员工。

    **格式**

    父类:(一个普通的定义)

    public class 父类名{

    //.....

    }

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

    //.....

    }

    ### 继承中成员变量重名的访问特点

    ```java
    /*
    在父子类的继承关系中,如果成员变量重名,则创建子类对象是,访问有两种特点
    1. 直接通过子类对象访问变量
    “=”左边是谁就优先用谁没有则向上找
    2. 间接通过成员方法访问成员变量
    该方法属于谁就优先用谁,没有则向上找

    */
    ```

    #### 定义一个父类

    ```java
    public class Demo01Fu {

    int num = 10;
    int numfu = 100;

    public void methodfu(){
    System.out.println("这是一个父类:"+num);
    }
    }
    ```

    #### 定义一个子类

    ```java
    public class Demo01Zi extends Demo01Fu {
    int num = 20;
    int numzi = 100;

    public void methodzi(){
    System.out.println("这是一个子类:"+num);
    }

    //若调用
    public void testmethod(){
    int num = 30;
    System.out.println(num);//30
    System.out.println(this.num);//20
    System.out.println(super.num);//10
    //区分·子类方法中重名的的三种
    //(父类成员变量(super.变量名)、子类成员变量(this.变量名)和局部变量(直接写))
    }


    }
    ```

    #### 调用其中的成员变量

    ```java
    public class Test {
    public static void main(String[] args){

    Demo01M fu = new Demo01M();
    System.out.println(fu.numfu);//100
    System.out.println(fu.num);//10
    //System.out.println(fu.numzi);错误;父类就是有一个普通的类,不能调用子类当中的内容

    Demo01Z zi = new Demo01Z();
    System.out.println(zi.numfu);//100
    //子类中没有改成员变量,向上找
    System.out.println(zi.numzi);//200
    System.out.println(zi.num);//20,
    // 在父类当中有重名成员变量,但‘=’左边是子类对象,所以用子类中成员变量

    System.out.println("========");
    zi.methodzi();//num 20
    zi.methodfu();//num 10
    //通过成员方法访问成员变量

    System.out.println("========");
    zi.testmethod();

    }
    }
    ```

  • 相关阅读:
    OpenJDK与HashMap
    跨终端Web之Hybrid App
    Java日志性能
    openstack
    Hadoop下各技术应用场景
    股票基金看哪些书
    Java内存模型的历史变迁
    浅谈JS DDoS攻击原理与防御
    清除Windows 10的文件夹浏览痕迹
    linux删除文件后没有释放空间
  • 原文地址:https://www.cnblogs.com/susexuexi011/p/13767811.html
Copyright © 2020-2023  润新知