首页 > 编程知识 正文

JAVA抽象类和接口的区别,Java抽象类和接口的区别

时间:2023-05-05 11:47:21 阅读:276097 作者:3975

这个专栏的目的是为了总结以下自己这几天面试时准备的内容,一是起到复习巩固作用,二是致敬1024~~~~~

抽象类:

       抽象类必须用 abstract 修饰,子类必须实现抽象类中的抽象方法,如果有未实现的,那么子类也必须用 abstract 修饰。抽象类默认的权限修饰符为 public,可以定义为 public 或 procted,如果定义为 private,那么子类则无法继承。抽象类不能创建对象

抽象类和普通类的区别

      抽象类必须用public、procted 修饰(如果为private修饰,那么子类则无法继承,也就无法实现其抽象方法)。默认缺省为 public
抽象类无法创建对象
      如果一个子类继承抽象类,那么必须实现其所有的抽象方法。如果有未实现的抽象方法,那么必须定义为 abstract

接口

      接口类必须用interface进行修饰,接口中的变量使用 public static final 修饰,并且需要给出初始值。方法隐式的使用 public abstract 修饰(并且只能是 public ,如果是 private,procted,那么就编译报错)。接口中的方法默认不能有具体的实现(JDK1.8开始可以有默认的实现)

接口和抽象类的区别 一个类只能只能继承一个抽象类,但是可以实现多个接口一个类必须实现接口和抽象类其中所有的方法,抽象类中如果有未实现的抽象方法,那么子类也需要定义为抽象类。抽象类中可以有非抽象的方法接口中的变量必须用 public static final 修饰,并且需要给出初始值。所以实现类不能重新定义,也不能改变其值。接口中的方法默认是 public abstract,也只能是这个类型。不能是static,接口中的方法也不允许子类覆写,抽象类中允许有static 的方法 接口和抽象类都不能被实例化。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。