接口的作用
制作接口仅仅是为类的定义建立一种统一的标准,当某个类需要进行严格的格式限定时,可以为该类指定满足何种情况的规范,接口在这个充当了规范的作用。
接口如何定义?
访问控制修饰符 interface 接口名{
变量声明
方法声明
}
接口的变量
接口中的变量都是公共的静态的常量,并且要求对其进行初始化
接口中的变量默认修饰符
public static final 接口常量名 = 值;
接口的方法
接口中的方法都是公共的抽象方法,接口中的方法没有方法体,仅在接口所对应的规则间建立一种通用的操作定义
接口中的变量默认修饰符
public abstract 返回值类型 方法名(参数列表);
接口的修饰符
public 公共接口,可以被任意访问
默认:只能在包内访问
接口使用规则
接口使用语法结构
class 类名 implements 接口名{
}
类的制作不仅可以满足一种制作标准,还可以同时满足多种制作标准
class 类名 implements 接口1,接口2{
}
以上过程称为类实现了某个接口
接口的使用规则
一旦类在制作过程中实现了某个接口,就要对该接口中所有的抽象方法进行实现
如果一个类未对所实现的接口中的方法进行全部实现,必须将该类声明为抽象类,毕竟该类的描述完全定义
接口的合并
每个接口定义了一种标准规范,当开发过程中如果频繁需要同时使用多个接口来限定一个类的制作,可以将多个接口进行合并
语法结构
interface 总接口名 extends 子接口1,子接口2,….{
}
接口在合并时使用了多继承的语法结构,由于接口中的方法均为抽象方法,并不具有方法体的声明,因此在合并时,不会出现规则不统一的情况出现
接口的合并冲突
接口在合并时根据标准开发模式是不会出现合并冲突的现象,但是由于开发过程不是由单一人员进行控制,因此错误的定义将导致接口的合并冲突问题
接口的合并冲突—变量
对于接口合并过程中,如果两个变量定义了相同的名称,但是类型不同,会造成冲突,编译检查失败
对于接口合并过程中,如果两个变量定义了相同的名称,类型也相同,但是值不同,同样也会造成冲突,但是该合并仅仅在运行期对应的变量被调用时才会出现冲突。
接口的合并冲突—方法
对于接口合并过程中,如果两个方法定义了相同的方法名,相同的参数列表,将被识别为同一方法,此时必须保障返回值类型完全相同,如果不同,会造成冲突,编译检查失败。
接口的使用技巧
接口在使用时,如果其中某些方法的实现规则保持固定不变,可以在接口与实现类间建立一级抽象类,对固定不变的方法进行实现,对不确定的方法交由使用人员继续扩展,但是java语言中继承只支持单一继承,对于这样弥足珍贵的继承机会,不能随便使用,在开发过程中要注意