关于java:JAVA基础抽象类和接口

5次阅读

共计 891 个字符,预计需要花费 3 分钟才能阅读完成。

抽象类

形象办法的概念

形象办法次要指不能具体实现的办法, 并且应用 abstract 关键字润饰, 就也就没有办法体

具体格局如下: 拜访权限 abstract 返回值类型 办法名(形参列表);
public abstract void cry();

抽象类的概念

抽象类次要指不能具体实例化的类并且应用 abstract 关键字润饰, 也就是不能创建对象

抽象类和形象办法的关系

  • 抽象类中能够有成员变量, 构造方法, 成员办法
  • 抽象类中能够没有形象办法, 也能够有形象办法
  • 领有形象办法的类必须是抽象类. 因而真正意义上的抽象类应该是 具备形象办法并且应用 abstract 关键字润饰的类

抽象类的实际意义

  • 抽象类的实际意义不在于创建对象而在于被继承
  • 当一个类继承抽象类后必须重写形象办法, 否则该类也变成抽象类. 也就是抽象类对子类具备强制性和规范性. 因而叫做模板设计模式

开发教训分享

  • 在当前的开发中举荐应用 多态 的格局. 此时父类类型援用间接调用的所有办法肯定是父类中领有的办法. 若当前更换子类时, 只须要将 new 关键字前面的子类类型批改而其它中央无需扭转就能够立刻失效. 从而进步了代码的可维护性和可扩展性
  • 该形式的毛病就是: 父类援用不能间接调用子类独有的办法, 若调用则须要强制类型转换

接口

接口的概念

  • 接口就是一种比抽象类还形象的类, 体现在 所有办法都为形象办法
  • 定义类的关键字是class, 定义接口的关键字是interface

类和接口之间的关系

抽象类和接口的次要区别

  • 定义抽象类的关键字是abstract class, 而定义接口的关键字是interface
  • 继承抽象类的关键字是extends, 而实现接口的关键字是implements
  • 继承抽象类反对 单继承 , 而实现接口反对 实现
  • 抽象类中能够有构造方法, 而接口中不能够有构造方法
  • 抽象类中能够有成员变量, 而接口中只能够有常量
  • 抽象类中能够有成员办法, 而接口中只能够有形象办法
  • 抽象类中减少办法时子类能够不必重写 , 而接口中减少办法时实现类须要重写(Java8 以前的版本)
  • 从 Java8 开始减少新个性, 接口中容许呈现非形象办法和静态方法, 但非形象办法须要应用 default 关键字润饰
  • 从 Java9 开始减少新个性, 接口中容许呈现公有办法
正文完
 0