11_Java_抽象与接口

abstruct 抽象

abstract关键字来定义抽象类。抽象类的作用仅仅是表达接口,而不是具体的实现细节。抽象类中可以存在抽象方法。抽象方法也是使用abstract关键字来修饰。抽象的方法是不完全的,它只是一个方法签名而完全没有方法体。

如果一个类有了一个抽象的方法,这个类就必须声明为抽象类。如果父类是抽象类,那么子类必须覆盖所有在父类中的抽象方法,否则子类也成为一个抽象类。一个抽象类可以没有任何抽象方法,所有的方法都有方法体,但是整个类是抽象的。设计这样的抽象类主要是为了防止制造它的对象出来。

抽象函数和抽象类
  • 抽象函数-----表概念而无法实现具体代码的函数
  • 抽象类-----表达概念而无法构造出实体的类
  • 带有 abstruct 修饰符的函数
  • 有抽象函数的类一定是抽象类
  • 抽象类不能制造对象
  • 但是可以定义变量
    • 任何继承了抽象类的非抽象类的对象可以付给这个变量
实现抽象函数
  • 继承自抽象类的子类必须覆盖父类中的抽象函数,否则自己成为抽象类
两种抽象
  • 与具体相对
    • 便是一种概念而非实体
  • 与细节相对
    • 表示在一定程度忽略细节而着眼大局

猜你喜欢

转载自blog.csdn.net/qq_45459526/article/details/122930928