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

    }
}
相关推荐
月疯2 分钟前
np.where()[0]的用法
开发语言·python·numpy
折哥的程序人生 · 物流技术专研3 分钟前
第4篇:抽象工厂模式——产品族一键创建
java·设计模式·抽象工厂模式·创建型模式·编程进阶·产品族·扩充系列
正儿八经的少年4 分钟前
Spring Boot
java·spring boot·后端
z落落8 分钟前
C#五大加密算法(AES、DES、MD5、RSA、SHA)
开发语言·c#
未秃头的程序猿10 分钟前
虚拟线程用了一年,我真香了——10倍吞吐量是真实存在的
java·后端·面试
namexingyun11 分钟前
Scaling Law bug实战启示:从“虚胖“到“精瘦“的算力效率革命
开发语言·网络·人工智能·bug·ai编程
hnxaoli20 分钟前
统信小程序(十六)xls转xlsx
开发语言·python·小程序
孝顺的书包23 分钟前
将《C# 调用非托管程序》一文中最后一种方法修改如下(篇幅原因简化了注释):
开发语言·c#
xiaogai_gai24 分钟前
钉钉数据集成到金蝶云星空案例分享:传给钉钉后,回传金蝶字段
java·前端·钉钉
摇滚侠24 分钟前
云原生 Java 架构师的第一课 K8s+Docker+KubeSphere+DevOps 19-25
java·云原生·kubernetes