我被问到这是一个采访,并没有找到答案。
问问题
156 次
4 回答
2
那可能吗?
是的,这是可能的。那不会有任何区别。您的类仍然必须提供单个方法定义。这将满足两个接口的合同。
于 2013-07-10T19:01:13.317 回答
2
这是可以接受的,但如果这两个接口提供不同的契约或不同的预期行为,您的代码可能会遇到微妙的、难以调试的问题,因为您可以将对象传递给期望一个接口的复杂性的方法,但遇到对方的错综复杂。
于 2013-07-10T19:02:42.377 回答
1
是的,这是可能的。如果两个原型或方法头都相同,您只需在类中编写方法,并且您天生就满足两个接口的约定(假设还包括所有其他方法)。
接口不会告诉你如何实现某些东西,它是一个约定,要求某些方法出现在实现接口的类中。现在,“预期的”冲突行为可能存在问题;但是,如果按照设计,您应该实现这两个接口,这是一种完全可以接受的做法。
编辑:这是一个(要求的)示例:
public interface One
{
void test(String x);
}
public interface Two
{
void test(String x);
}
public class InterfaceTest implements One, Two
{
public void test(String s)
{
System.out.println(s);
}
}
于 2013-07-10T19:12:04.080 回答
-1
对的,这是可能的。有些接口根本没有必需的方法。可序列化就是其中之一。
于 2013-07-10T19:06:22.800 回答