抽象类和接口与内部类
文章目录
一、abstract:抽象的
二、接口的使用
三、内部类
一、abstract:抽象的
- abstract可以用来修饰的结构:类、方法
一、abstract修饰类:抽象类
1、 此类不能实例化(不能new对象)
2、抽象类中一定有构造器,便于子类实例化时调用
3、开发中,都会提供抽象类的子类,让子类对象实例化
二、abstract修饰方法:抽象方法
1、抽象方法只有方法的声明:没有方法体
2、 包含抽象方法的类一定是一个抽象类(但是抽象类中可以没有抽象方法)
3、子类重写父类的所有抽象的方法后,此子类可实例化
若子类没有重写父类所有的抽象方法,此子类一定是抽象类,需要加个abstract
abstract使用上的注意点:
- 1.abstract不能用来修饰:属性和构造器等结构
- 2.abstract不能用来修饰私有方法、静态方法、final方法、final类
二、接口的使用(JDBC中会用到的!)
- 1、接口使用interface来定义
- 2.Java中,接口和类是并列的结构(类与接口)
- 3.Jdk7以前,只能定义全局常量和抽象方法
全局变量:pubic static final 书写时,可以省略不写
抽象方法:public abstract - 4、Jdk8,增加了静态方法和默认方法
- 5.Java开发中,接口通过让类去实现(implement)的方式来使用
实现类重写了接口中所有抽象方法,可实例化
否则,实现类为抽象类 - 6.Java类可以实现多个接口------->弥补了Java单继承性的局限性
class AA extends BB implements CC,DD,EE
-
7.接口与接口直接可以继承和多继承
接口的使用:实际上是定义了一种规范,也满足多态性,面向接口编程
Jdk8新特性:
-
1、接口中定义静态方法,只能通过接口来调用
-
2、通过实现类的对象,可以调用接口中的默认方法