【Java面向对象高级一08】继承_使用继承的好处

  • 前言

  • 一、继承是什么?

  • 二、使用继承的好处

  • 总结


前言

继承的学习


一、继承是什么?

Java中提供了一个关键字extends,用这个关键字,可以让一个类和另一个类建立起父子关系。extends(中文意思就是继承)。

继承的意思是:能用。也就是说能用父类的非私有成员和方法。

继承的特点:

子类能继承父类的非私有成员(成员变量,成员方法)。

继承后对象的创建:

子类的对象是由子类,父类共同完成的。

这句话的意思是:在继承的情况下,创建一个子类对象,相当于同时创建了子类和父类的对象。也可以这样理解,子类对象实际上是由子类和父类这两张设计图共同创建出来的。

二、使用继承的好处

1、减少重复的代码编写。

案例:

员工管理系统中,需要处理讲师和咨询师的数据

讲师的数据有:姓名,具备的技能;

咨询的数据有:姓名,解答问题的总人数;

People

java 复制代码
public class People {

    private String name;


    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

}

Teacher

java 复制代码
public class Teacher extends People {

    private String skill;//技能

    public String getSkill() {
        return skill;
    }

    public void setSkill(String skill) {
        this.skill = skill;
    }

    public void print_info(){
        System.out.println("讲师的姓名是:"+getName()+","+"具备的技能是:"+getSkill());
    }
}

Consultant

java 复制代码
public class Consultant extends People  {

        private int num;//人数

    public int getNum() {
        return num;
    }

    public void setNum(int num) {
        this.num = num;
    }

    public void print_info1(){
        System.out.println("咨询师的姓名是:"+getName()+","+"人数是:"+getNum());
    }





}

TEST

java 复制代码
public class TEST {
    public static void main(String[] args) {

        Teacher t=new Teacher();
        t.setName("张老师");
        t.setSkill("弹吉他");
        System.out.println(t.getName());
        System.out.println(t.getSkill());
        t.print_info();

    }

}

总结

暂无

相关推荐
软件技术NINI31 分钟前
基于SpringBoot和Vue的新能源汽车销售推荐系统
java·vue.js·spring boot·后端·汽车·毕业设计·毕设
Flynn Liang1 小时前
LangChain4j 生产级工程骨架:12 个模块 + Docker 一键启动
java·spring boot·langchain·rag·langchain4j
噢,我明白了2 小时前
JAVA中的一些基础应用知识点
java·开发语言
SL_staff3 小时前
私有化低代码不是妥协,而是企业级数字化的自主可控主航道
java
装不满的克莱因瓶3 小时前
【SpringAI Alibaba】ReactAgent结构化输出OutputType与OutputSchema实战
java·人工智能·ai·springai·springaialibaba
时间的拾荒人3 小时前
Redis 入门详解:核心特性、重要文件与全局命令实战
开发语言·redis·面试
秋天的怀念_David3 小时前
算法一千零一夜 · 第二十八夜 注册
java·程序人生·算法
敲上瘾3 小时前
Qt Widgets入门:项目模板解析与Hello World
开发语言·数据库·c++·qt·ui·qt6.3
Java码农也是农3 小时前
Spring 事务详解:@Transactional 如何生效、何时回滚、传播行为怎么选
java·spring boot·spring·事务
学长毕设4 小时前
基于SpringBoot的游乐园管理系统-附源码
java·spring boot·后端