【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();

    }

}

总结

暂无

相关推荐
峥嵘life5 小时前
Android16 311Y3 EAP-TLS 网络连接失败分析与修复总结
android·开发语言·人工智能·php
M-Robots echo5 小时前
轻量化裁剪方案解析:M-Robots 模块化构建,适配高低端各类机器人硬件平台
java·机器人·ros·开源社区·atomgit·m-robots
不可求~6 小时前
多模型路由怎么落地:把任务分流写进项目的最小实现
java·前端·数据库
mldong6 小时前
用 DDD 设计工作流引擎:聚合根与充血模型
java·架构
mqiqe7 小时前
AgentScope Java Harness:4. 双层记忆系统 让 Agent 拥有真正的“长期大脑“
java·开发语言
伍一517 小时前
03-文件管理模块-一个看似简单的模块藏着多少细节
java·ruoyi·若依
gugucoding8 小时前
46. 【Java】JUC并发工具:让并发更简单
java·开发语言
Nebula_g8 小时前
JavaSE基础语法:面向对象高级(代码中的成分)
java·开发语言·编程·javase·技术栈·高级语法
for_ever_love__8 小时前
python基础语法学习: 异常的传递性
开发语言·python·学习
AC赳赳老秦9 小时前
公开图片 OCR 数据提取:OpenClaw 合规采集公开信息图,识别文字与表格并转化为结构化数据
java·大数据·前端·数据库·python·php·openclaw