JavaSE知识点8java抽象类和接口

抽象类

  • 1 使用abstract修饰class的类,叫做抽象类。
  • 2 抽象类不能被实例化。即不能被new出来。

抽象方法

  • 1 使用abstract修饰method的方法,叫做抽象方法。
  • 2 抽象方法只允许被申明,不能有具体实现。
    例如:
public abstract void test(String arg);

即抽象方法不能有{},即使{}里面是空,都不允许。

  • 3 抽象方法只能申明(定义)在抽象类里面。
  • 4 抽象类里面不一定非得有抽象方法。

抽象类作为父类

  • 1 抽象类的子类,必须覆盖(重写)抽象类中所有抽象方法。
  • 2 如果抽象类的子类没有覆盖(重写)抽象类中的抽象方法,则子类必须也定义为一个抽象类。
  • 3 只有定义没有实现的抽象方法,其实是在定义一种方法规范,供不同的子类来实现不同的具体逻辑。

接口(Interface)

  • 1 使用inteface关键字定义接口
  • 2 接口中的所有方法都抽象方法,可以使用abstract所修饰,不过默认可以省略abstract
  • 3 接口同样不能被实例化,即同样不能被new出来。
  • 4 接口需要被实现(implements),实现了接口的类可以被实例化
  • 5 接口的子类必须实现接口中的所有方法。
  • 6 如果是抽象类implements接口,则该抽象类子类可以不实现接口中的方法。
  • 7 一个类可以implements多个接口,但是一个类只能继承一个父类。
  • 8 接口可以继承另一个接口
  • 9 多态在接口中的体现,接口类型的引用可以指向该接口子类的对象,其方法调用也是动态绑定的。
  • 10 接口中可以定义成员变量,且默认被public static final所修饰
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,823评论 18 399
  • 你很清楚的知道什么时候用抽象类,什么时候用接口么?p.s. 多文字预警! 1 抽象类和接口简介 1.1 抽象类 ...
    Sharember阅读 2,388评论 9 55
  • 一、抽象类 1、抽象类含义的概括: 当多个类出现相同功能时,但功能主体不同,这样可以向上抽取,抽取时只抽取功能定义...
    玉圣阅读 855评论 0 6
  • 本文出自 Eddy Wiki ,转载请注明出处:http://eddy.wiki/interview-java.h...
    eddy_wiki阅读 1,231评论 0 5
  • 空气里是留念的味道 骨子里却在期待 新气息的来到 时光 总是不经意的溜掉 历史的长河里 你我,又是 以怎样的视角 ...
    橙子不是橘阅读 183评论 0 1