类实现接口,实际上就是在落实指定的规范 实现接口使用implements
如果一个类要实现一个接口,那么这个类要实现这个接口的所有方法 类不支持多继承但是接口支持多实现,接口支持多实现
为啥类不支持多继承,因为面对同名方法时会出现干扰的问题,而在接口的多实现时,同名方法都没实现,因此不会出现这种冲突
如果一个类实现了接口,但又不想实现这些方法时,需要这个类为一个抽象类 抽象类可以对接口进行扩展,可以扩充新标准
抽象类位于接口和类的中间,也是一种非常仿生的东西,抽象类可以实现也可以继续向下甩锅,类要么实现,要么变成抽象类,让其他类实现方法
接口是支持多继承的,接口可以实现多继承,因为接口不需要实现,有同名的也不会冲突。继承和实现关键字对使用方的要求是不一样的
接口里边的方法可以不是抽象的,1.8之前,接口中的方法都是抽象方法,1.8之后,接口中的方法可以存在默认方法
接口没有构造方法,没有构造器,它只能是使用多态的方式进行类似实例化的行为
行为这个东西有时不需要写的那么具体,这时我们需要抽象类。有时行为不需要具体化的时候,我们需要让它抽象一点,我们在抽象方法中不提供实现
抽象修饰词:abstract。抽象方法只能在抽象类中声明
抽象类中不见得都是抽象方法,但是抽象方法只能存在于抽象类中
当我们想让一个类中只有方法,且都是抽象方法,我们可以建立一个接口,不用创建类了
接口就是对行为的一个封装,接口中所有的方法都是抽象方法
接口里边不能写属性
在接口中定义的变量,会被当成常量来处理。也就是说在接口中只能定义常量
接口不能被实例化,只有类能被实例化,因为接口都是抽象的,它的方法都说不清楚,因此不能被实例化。因此里边的变量没意义,接口是行业标准级别的存在,因此不可以有变量
接口的目的在于提供行业标准,在定义好行业标准之后要去落实它,这是我们需要一个类来实现接口
JAVA-接口
于 2022-03-08 18:19:47 首次发布