17.黑马程序员-继承

来源:互联网 发布:软件学着玩 编辑:程序博客网 时间:2024/05/12 22:48

------- android培训、java培训、期待与您交流! ----------

    1.继承概述
  • 类用于描述事物,事物就有属性和行为。这些事物当中有一些共性。
    • 例如学生类和工人类,学生类有姓名、年龄属性和学习行为,工人类有姓名、年龄属性和工作行为,可以将学生和工人的共性提取出来,单独进行描述,只要让工人和学生与描述的这个类有关系就可以了。
  • 可以将这些共性提出出来,然后描述成一个类,这个类比较抽象。
    • 抽取学生类和工人类的姓名、年龄抽取成一个person抽象类。
    • 然后学生类和工人类继承person类。
    2.继承的定义
    class A enteds B{}

    3.继承的优缺点
  • 好处:提高了代码的复用性,让类与类之间产生了关系,有了这个关系,就有了多态的特性。
  • 弊端:打破了封装性,可以被重写。
    4.继承的注意事项:
  • 千万不要为了获取其他类的功能,简化代码而继承。
    • 比如看到一个类的内容不错就继承是不可取的,不能为了继承而继承。
    • 一个人和一个猫,猫继承了人,就要有人的行为,敲键盘、写代码...
    • 哪种是可以继承的,例如猫、虎、豹都是继承的猫科。
  • 必须是类与类之间有所属关系才可以继承。所属关系is a。
  • 什么类可以继承,父类的内容是不是之类都该具备的,如果不是,就不该继承。
    • 一个类需要另一个类中的成员,如果两个类有共性,可以向上抽取出一个抽象类。
    5.java中的继承
  • java只支持单继承,不支持多继承。
  • 不支持单继承的原因是容易带来安全隐患。当多个父类中定义了相同功能,当内容不同,子类对象不确定要运行哪一个。
  • 但是java保留了多继承机制,并用另一种形式完成表示,就是多实现。
  • java支持多继承(继承体系):A继承B,B继承C,C继承D...也就是一个继承体系
    • 如何使用继承体系的功能:先查阅体系父类中的描述,因为父类定义的是该体系中共性功能。
    • 那么这个体系已经可以基本可以使用了。
    • 那么在具体调用时,要创建最子类的对象,
      • 因为1、父类有可能不能创建对象,比如抽象类。
      • 2、创建子类对象可以使用更多的功能,包括基本的和特有的。
    • 简单一句话:查阅父类功能,创建子类对象使用功能






原创粉丝点击