首页 > 代码库 > 疯狂Java讲义(十四)---- 抽象类和接口
疯狂Java讲义(十四)---- 抽象类和接口
- 抽象类
抽象方法和抽象类必须使用abstract修饰符定义,有抽象方法的类只能被定义为抽象类,抽象类里可以没有抽象方法。抽象类不能被实例化。
- 接口
接口只是一种规范,定义了某一批类所需要遵守的规范,接口不关心这些类的内部状态数据,也不关心这些类里的实现细节,它只规定这些类必须提供某些方法。接口体现的是规范和实现分离的设计哲学。
接口语法:
- 修饰符可以是public或省略,如果省略修饰符,默认采用包权限访问控制符。所以一般都是public。因为接口是多个类共同的公共行为规范,因此接口里的所有成员都是public访问权限。
- 一个接口可以有多个直接父接口,但接口只能继承接口,不能继承类。
- 接口不包含构造器和初始化块定义,可以包含常量属性/抽象实例方法/内部类(内部接口/枚举)定义。
- 接口中的常量是和接口相关的,因此系统会自动为这些属性添加static和final修饰符。接口中的方法会自动添加abstract修饰。而且方法的修饰符只能是public和abstract
- 接口里的方法全部是抽象方法,因此不允许定义静态方法,即不可以使用static来修饰接口里的方法。
一个类实现了一个或多个接口之后,这个类必须完全实现这些接口里所定义的全部抽象方法,否则,该类将保留从父接口那里继承到的抽象方法,该类也必须定义成抽象类。
疯狂Java讲义(十四)---- 抽象类和接口
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。