Java-面向对象_继承的引入

【1】 类是对对象的抽象:

举例:

小米,华为,苹果  - - -》类:手机类

 

【2】继承是对类的抽象:

举例:

 

学生类:student:

属性:姓名,年龄,身高,学生编号

方法:吃饭,睡觉,喊叫,学习

 

教师类:Teather:

属性:姓名,年龄,身高,教师编号

方法:吃饭,睡觉,喊叫,教学

 

员工类:Emploee:

属性:姓名,年龄,身高,员工编号

方法:吃饭,睡觉,喊叫,工作

 

共同的东西:

人类:

属性:姓名,年龄,身高,

方法:吃饭,睡觉,喊叫

 

学生类/教师类/员工类 继承自 人类

 

以后定义代码

先定义人类

人类:-->父类、基类、超类

属性:姓名,年龄,身高,

方法:吃饭,睡觉,喊叫

 

再定义:--->子类 派生类

学生类:student:

属性:学生编号

方法:学习

 

教师类:Teather:

属性:教师编号

方法:教学

 

员工类:Emploee:

属性:员工编号

方法:工作

 

代码:

父类:

package com.study4;

/*
 * 父类
 */

public class Person {
    private String name;
    private int age;
    private double hight;
    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 double getHight() {
        return hight;
    }
    public void setHight(double hight) {
        this.hight = hight;
    }
    
    public void study() {
        System.out.println("我正在学习...");
    }
    
    public void work() {
        System.out.println("我正在工作");
    }
    
    public Person() {
        
    }
    public Person(String name,int age,double hight) {
        this.name = name;
        this.age = age;
        this.hight = hight;
    }
}

子类:

package com.study4;
/*
 * 子类
 */
public class Student extends Person{
    private int num;

    public int getNum() {
        return num;
    }

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

测试类:

package com.study4;

public class Test {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Student st  = new Student(18);
        st.setName("小明");
        st.setAge(18);
        st.setHight(180.5);
        
        System.out.println(st.getName()+","+st.getAge()+","+st.getHight()+","+st.getNum());
    }

}

运行:

 

 

【3】继承的好处:提高代码的复用性

父类定义的内容,子类可以直接拿来用就可以了,不用代码上反复重复定义了

 

需要注意的点:

父类private修饰的内容,子类实际上也继承,只是因为封装的特性阻碍了直接调用, 但是提供间接调用。

posted @ 2021-02-27 02:50  别看我看路  阅读(91)  评论(0)    收藏  举报