Java继承讲解 ,一看就会

大家好,今天给大家分享一下Java的继承

继承的本质是对某一批类的抽象,从而实现对显示世界的建模
extends的意思是 “扩展” 。子类是父类的扩展

Java当中只有单继承,没有多继承(一个儿子只能有一个父亲,但是一个父亲可以有多个儿子)

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

继承关系的两个类,一个为子类(派生类),一个为父类(基类),子类继承父类,使用关键字 extends来表示
子类和父类之间,从意义上说有 is a 的关系

看代码
新建Person类

package Demo09;
//Person   人   :父类
public class Person {
}

新建student类

package Demo09;
//学生 is 人  :派生类,子类
public class student {
}

让student继承person

package Demo09;
//学生 is 人    :派生类   子类
public class student   extends Person {
}

让teacher继承 person

package Demo09;
//老师 is 人
public class teacher extends Person{
}

上面的操作就是student,teacher类都继承了person
teacher 和student类都是person类的派生类,(子类)
person 是父类

在父类中写一个方法

package Demo09;
//Person   人
public class Person {
    public void  say(){
        System.out.println("说了一句话");
    }
}

此时的student类里边没有写什么

package Demo09;
//学生 is 人   :派生类,子类
public class student   extends Person {
}
package Demo09;

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

执行结果

在这里插入图片描述

我们可以发现
student当中什么也没写,但是成功输出结果,
即:子类可以继承父类所有的方法

下面再做一个

在父类person中写上10个亿

package Demo09;
//Person   人
public class Person {
    public int money =10_0000_0000;//jdk7的新特性
    public void  say(){

        System.out.println("说了一句话");
    }
}

子类student输出

package Demo09;

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

看执行结果
在这里插入图片描述

package Demo09;
//Person   人
public class Person {
    private int money =10_0000_0000;//jdk7的新特性
   //修饰符改成私有
    public void  say(){

        System.out.println("说了一句话");
    }
}
package Demo09;

public class Application {
    public static void main(String[] args) {
      student student =new student();
      student.say();
        System.out.println(student.money); //money 这一词会冒红
        //因为父类的修饰符为私有,因此不可被调用
        //也无法继承
        
        
    }
}

这个时候,如果我们不改私有化,同时要对指定属性进行继承

我们可以通过封装的方法设置方法

package Demo09;
//Person   人
public class Person {
    private int money =10_0000_0000;//jdk7的新特性
    public void  say(){

        System.out.println("说了一句话");
    }

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

    public int getMoney() {
        return money;
    }
}

在这里插入图片描述
截图当中,我们可以看见 person类,student类,teacher类
除此之外,我们还看见一个Object 类

在这里插入图片描述
即在Java当中,所有的类,都默认直接或者间接的继承Object这个类4

package Demo09;
//Person   人
public class Person {
    String      //按住  ctrl 键再点它就可以了

}

在这里插入图片描述

package Demo09;
//Person   人
public class Person  extends Object {       
    String      //按住  ctrl 键再点它就可以了

}

Object写或不写没关系

好了,Java继承就讲到这里了,谢谢大家

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

思诚代码块

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值