面向对象-继承extends

继承

  • 提高了代码的复用性
  • 让类与类之间产生了关系,有了这层关系,才有了多态的特征

注意

  • 千万不要为了获取其他类的功能,简化代码而继承
  • 必须是类与类之间有所属关系才可以继承,所属关系is a
  • JAVA语言中,只支持单继承多层继承,不支持多继承;但JAVA保留了这种机制,并用另一种提现形式多实现来完成

因为多继承容易带来安全隐患,当多个父类中定义了同样的功能,子类不知道该运行哪一个父类中的功能


class Person {
    String name;
    int age;
}//name和age是student和worker共有的描述,所以可以提取为父类

class Student extends Person{
    void study(){
        System.out.println(name+";"+age+";"+"good study");
    }
}//student继承了父类person后,可以定义自己的name和age

class Worker extends Person{
    void work(){
        System.out.println(name+";"+age+";"+"good work");
    }
}

class Show{
    public static void main(String[] args){
        Student s = new Student();
        s.name = "wuwu";
        s.age = 18;
        s.study();
        
        Worker w = new Worker();
        w.name = "zhzh";
        w.age = 28;
        w.work();
    }
}

输出结果:
wuwu;18;good study
zhzh;28;good work

如何使用一个继承体系中的功能呢?

  • 想要使用继承体系,先查阅体系中父类的描述,因为父类中定义的是该体系中的共性功能
  • 通过了解共性功能,就会知道该体系的基本功能

在具体调用时,为什么要创建最子类的对象?

  • 因为有可能父类不能创建对象
  • 创建子类对象可以使用更多的功能,既包括基本的也包括特有的

概述:查阅父类功能,创建子类对象使用功能

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容