在关于接口的 Oracle 文档中有一个非常令人困惑的句子
如果您强调
Relatable
在各种各样的类中实现,那么从这些类中的任何一个实例化的对象都可以与findLargerThan()
方法进行比较——前提是这两个对象属于同一个类。
我不确定我是否理解这一点。
假设有一个类A
并B
实现了接口Relatable
,我在main()
下面有一个代码。
A a = new A();
B b = new B();
System.out.println(a.isLargerThan(b));
假设isLargerThan()
方法根据接口返回一个int
,以便打印工作。
上面的代码能适用于任何 A 类和 B 类吗?我认为这是不可能的,因为每个类都有不同的实现,而且很可能是由于在
isLargerThan()
各个类的实现中对类的类型进行了强制转换。如果我的上述推论是正确的,那么在 oracle 文档中强调任何内容的原因是什么?这就是我困惑的根源。
我知道我应该实现它以了解它是否有效,但由于我是 Java 的初学者,我的实现本身可能使它不起作用。这就是我在这里问的原因。