This question already has answers here:
What is an interface in Java?
(9个答案)
Why would I want to use Interfaces? [closed]
(19个回答)
2年前关闭。
我目前正在学习有关Java的更多知识,并在书中遇到了一个例子,我认为这使我误解了接口的使用。正如我所看到的,所讨论的接口是完全没有必要的,我想知道我是否在读错它,还是应该在其他地方寻求更好的理解(我已经尝试过但不是很了解)。
接口:
实现类:
我在这里看不到接口有什么用,为什么类不能简单地删除Implements语句,以及接口真正起到什么作用。
编辑:由于我正在询问这个特定示例,所以与重复的问题并不完全相同,这些问题的答案并没有真正帮助我理解这个概念。
(9个答案)
Why would I want to use Interfaces? [closed]
(19个回答)
2年前关闭。
我目前正在学习有关Java的更多知识,并在书中遇到了一个例子,我认为这使我误解了接口的使用。正如我所看到的,所讨论的接口是完全没有必要的,我想知道我是否在读错它,还是应该在其他地方寻求更好的理解(我已经尝试过但不是很了解)。
接口:
public interface Series{
int getNext();
void reset();
void setStart(int x);
}
实现类:
class ByTwos implements Series {
int start;
int val;
By Twos() {
start = 0;
val = 0;
}
public int getNext(){
val += 2;
return val;
}
public void reset(){
val = start;
}
public void setStart(int x){
start = x;
val = x;
}
}
我在这里看不到接口有什么用,为什么类不能简单地删除Implements语句,以及接口真正起到什么作用。
编辑:由于我正在询问这个特定示例,所以与重复的问题并不完全相同,这些问题的答案并没有真正帮助我理解这个概念。
最佳答案
TL; DR
它定义了“什么”,即实现了什么
它定义了“如何”,即如何实现它。
该接口的主要目的是将实现与
定义并强制实施方法而无需
失败。
假设您是一名经理,并且决定程序员应该遵循模板,则可以使用Interface。它就是这样做的,它提供了模板。
假设团队负责人要强制实施某种功能,但又不想更改经理模板中的内容,他可以创建另一个界面。是的,接口可以多重继承。
接口是类可以做什么的契约(或协议,或共识)。当类实现某个接口时,它承诺为接口中声明的所有抽象方法提供实现。
它提供了抽象,您可以公开用于通信的接口,我们可以从接口本身识别签名。
它还提供了一种实现多态的方法。
参考:
https://www.tutorialspoint.com/java/java_interfaces.htm
https://msdn.microsoft.com/en-us/library/3b5b8ezk(v=vs.90).aspx
关于java - Java接口(interface)示例,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45567973/