java里接口是做什么用的,java 什么是接口
如何解决写爬虫IP受阻的问题?立即使用。
接口(英文:Interface),是JAVA编程语言中的抽象类型和抽象方法的集合,通常声明为interface。类通过继承接口来继承接口的抽象方法。
接口不是类。它们的编写方式和类类似,但是属于不同的概念。描述对象的属性和方法。接口包含要由类实现的方法。
除非实现接口的类是抽象类,否则该类应该定义接口中的所有方法。
接口不能实例化,但可以实现。实现接口的类必须实现接口中描述的所有方法,否则必须声明为抽象类。此外,在Java中,接口类型可用于声明变量。它们可以是空指针或绑定到用该接口实现的对象。
接口的声明语法格式如下:
[可见性]接口接口名称[扩展其他接口名称] {
//声明变量
//抽象方法}功能
在Java语言规范中,方法的特征只包括方法的名称、参数的数量和种类,而不包括方法的返回类型、参数的名称和抛出的异常。Java编译器在检查方法重载时,会根据这些条件判断两个方法是否重载。但是Java编译器在检查方法的替换时,会进一步检查两个方法(超类型和子类型)抛出的返回类型和异常是否相同。
接口实现的规则不同于类继承的规则。出于数据安全的考虑,一个类只有一个直接父类,即单一继承。但是一个类可以实现多个接口,弥补了一个类不能多继承的缺点。继承和接口的双重设计既保持了一个类的数据安全性,又变相实现了多重继承。
Java接口本身没有实现,因为Java接口不涉及表示,只描述公共行为,所以Java接口比Java抽象类更抽象。但是,接口不是类,所以不能用new运算符实例化接口。x=新可比值(.);//这个是误来的。但是可以声明接口变量CompareX//这是允许的。
Java接口的方法只能是抽象的和公共的。Java接口不能有构造函数。Java接口可以有公共、静态和最终属性。即接口中的属性可以定义为public static final int value=5;[1]
将接口方法的特征与方法的实现分开。这种划分体现在接口往往代表一个角色,这个角色包装了与那个角色相关的操作和属性,实现这个接口的类就是扮演这个角色的actor。一个角色由不同的演员扮演,不同的演员除了一个共同的角色之外,不需要任何共同之处。
使用
两个类中两个相似的函数调用它们的类来动态确定一个实现,于是提供了一个抽象的父类,子类分别实现父类定义的方法。
问题的出现:Java是一种单一继承语言。一般来说,哪个特定的类可能已经有了超类,解决方法就是添加它的父类或者它的父类,直到它移动到类层次结构的顶层。这样,特定类的可插入性设计就变成了对整个层次结构中所有类的修改。
可插入性
层次结构中的任何类都可以实现一个接口,这个接口会影响这个类的所有子类,但不会影响这个类的任何超类。这个类必须实现这个接口指定的方法,它的子类可以自动从这个类继承这些方法。当然,他们也可以选择替换所有这些方法,或者其中的一部分。此时,这些子类是可插入的(并且可以用该接口类型加载,并且其所有子类都是交付的)。
我们关心的不是具体的类,而是这个类是否实现了我们需要的接口。
接口提供了方法调用的连接性和可插入性。软件系统的规模越大,生命周期越长。接口保证了软件系统的灵活性、可扩展性和可插入性。
类型
使用Java接口将软件单元与内部和外部耦合。Java接口不是声明变量类型、返回方法类型、声明参数类型和转换数据类型的具体类。
理想情况下,一个具体的Java类应该只实现Java接口和抽象Java类中声明的方法,不应该给出多余的方法。
等级结构
Java接口(和抽象类)通常被用作类型层次结构的起点。
如果一个类已经有了一个主超类型(父类),那么通过实现一个接口,这个类可以有另一个次超类型,这被称为混合类型。
这就是java中接口的细节。请多关注我们的其他相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。