代码改变世界

Day26继承

2022-08-31 00:07  rebirthhhh  阅读(16)  评论(0编辑  收藏  举报

继承

继承的本质是对某一批类的抽象,从而实现对现实世界更好的建模。

extends的意思是“扩展”。子类是父类的扩展。

Java中类只有单继承,没有多继承!

继承是类和类之间的一种关系。除此之外,类和类之间的关系还有依赖、组合、聚合等。

继承关系的两个类,一个为子类(派生类),一个为父类(基类)。子类继承父类,使用关键字extends来表示。

子类和父类之间,从意义上讲应该具有“ is a”的关系。

object类 :在Java中,所有的类都默认直接或者间接继承Object

super

方法重写

package oop.demo;
//Person 人  父类
public class Person {

    //public 公共的
    //default 默认的 (可以写)
    //private 私有的
    //protected 受保护的

    //在Java中,所有的类都默认直接或者间接继承Object

    private int money = 10_0000_0000;


    public void say(){
        System.out.println("说了一句话");
    }

    public int getMoney() {
        return money;
    }

    public void setMoney(int money) {
        this.money = money;
    }
}

package oop.demo;
//学生  is  人
//子类继承了父类,就会拥有父类的全部方法!
public class Student extends Person{

    //Ctrl + H
}

package oop;

import oop.demo.Student;

public class Application {
    public static void main(String[] args) {
        Student student = new Student();
        student.say();
    }
}

super注意点

1.super调用父类的构造方法,必须在构造方法的第一个

2.super必须只能出现在子类的方法或者构造方法中

3.super和this不能同时调用构造方法!

this:

代表的对象不同:

​ this:本身调用者这个对象

​ super:代表父类对象的应用

前提

​ this:没有继承也可以使用

​ super:只能在继承条件下才可以使用

构造方法

​ this():本类的构造

​ super():父类的构造