java知识五(继承)

第一章 继承

Java中提供了一个关键字extends,用这个关键字,可以让一个类和另一个类建立起父子关系。

java 复制代码
public class B extends A {
}

A类称为父类(基类或超类)。

B类称为子类(派生类)。

1.1 子类继承

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

1.2 继承后对象的创建

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

继承的好处:1.代码复用 2.减少了重复代码

1.2.1 People父类创建

java 复制代码
package com.kgl.extendsdemo;

public class People {
    private String name;
    private int age;
    private char sex;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public char getSex() {
        return sex;
    }
    public void setSex(char sex) {
        this.sex = sex;
    }
    public People() {
    }
    public People(String name, int age, char sex) {
        this.name = name;
        this.age = age;
        this.sex = sex;
    }
}

1.2.2 Teacher类

java 复制代码
package com.kgl.extendsdemo;

public class Teacher extends  People{
    private String skill;
    public String getSkill() {
        return skill;
    }
    public void setSkill(String skill) {
        this.skill = skill;
    }
    public Teacher(String name, int age, char sex, String skill) {
        super(name, age, sex);
        this.skill = skill;
    }
    public Teacher() {
    }
}

1.2.3 Consultant类

java 复制代码
package com.kgl.extendsdemo;

public class Consultant extends People{
    private int num;
    public int getNum() {
        return num;
    }
    public void setNum(int num) {
        this.num = num;
    }
}

1.2.4 使用

java 复制代码
package com.kgl.extendsdemo;

public class Test {
    public static void main(String[] args) {
        Teacher t = new Teacher("张三",18,'男',"java");
        System.out.println(t.getName());//张三
        System.out.println(t.getAge());//18
        System.out.println(t.getSex());//男
        System.out.println(t.getSkill());//java
        Consultant c = new Consultant();
        c.setNum(10);
        System.out.println(c.getNum());//10

    }
}
相关推荐
霸道流氓气质4 小时前
RAG 可观测性与生产监控实战:四层遥测模型、五大仪表盘与 OpenTelemetry 全链路追踪的 Java 生产级实现
java·人工智能·python
AOI小白新手上路5 小时前
autodl常用的tar 打包下载(数据集)命令手册:逐段拆解与套用模板
java·大数据·数据库
catchadmin5 小时前
免费可商用 PHP 管理后台 CatchAdmin V5.4.1 发布,新增 MCP 支持
开发语言·php
jimy16 小时前
c++的 Type Traits (二、更详细版本)
开发语言·c++
狗凯之家源码网6 小时前
纯 PHP+MySQL 应用市场系统源码实测!
开发语言·mysql·php
dishugj6 小时前
系统架构风险点、敏感点和权衡点的概念和区分
java·开发语言
苜蓿muxu6 小时前
常用代码命名规范
java
geovindu7 小时前
rust:Memento Pattern(续)
开发语言·后端·设计模式·rust·行为模式·备忘录模
马优晨7 小时前
JAVA 中 VO 实体类是什么意思,为什么要做这个
java·开发语言·状态模式·java vo·java vo是什么