2020.7.28 抽象类

发布于 2020-07-27  61 次阅读


Table of Contents

  • 对象的共性抽取
  • 抽象类没有结构体 也就是没有大括号 {}
  • 如果一个类包含抽象方法,那么该类必须是抽象类。
  • 继承抽象类的子类必须重写父类所有的抽象方法,否则该子类也是抽象类
  • 定义

    • 抽象方法 : 没有方法体的方法。
    • 抽象类:包含抽象方法的类。
  • 注意事项

    • 抽象类不能创建对象
    • 抽象类可以有构造方法
    • 抽象类可以有成员变量
    • 抽象类共性成员变量,可以在抽象父类中
    • 抽象类不一定有抽象方法
    • 抽象类被继承一定要实现所有抽象方法
  • 对象的内存解释

    • 对象在内存中的位置:对象由new关键字创建,如同数组,实体存在于堆内存中.任何事物均可以定义成类,创建对象,属于引用类型.而对象的引用变量是一个普通变量。存储的值是该对象堆内存中的地址.
  • 2.扩展延伸知识

    • java引用类型

      • 数组,类,接口
    • 必须要记:方法栈,堆,方法区

      • 方法栈:所有方法都在里面(包括方法里面的变量)
      • 方法区:class文件都在里面
      • 推:对象,数组在里面(super 划分一块区域,是super )
    • 内存图

      • 父类先进,子类
      • 父类的变量,跟着子类进入堆内存
      • super表示子类中属于父类区域的内存地址
    • 子类构造方法的第一行一定是?

      • 隐式存在super();语句
      • 子类构造方法,必须调用父类构造方法(否则报错)
      • 注意:
        • 父类不存在无参构造函数,则需要手动调用父类构造函数

    3.灵感代办

    • 能够写出类的继承格式
    • 能够说出继承的特点
    • 能够区分this和super的作用
    • 能够说出方法重写的概念
    • 能够说出方法重写的注意事项
    • 能够写出抽象类的格式
    • 能够写出抽象方法的格式
    • 能够完成员工类综合案例

    4.复习内容

    5.学习成果&问题