我看到这样的代码
class A implements Comparable<A> {
}
这意味着什么,它的优点和缺点是什么?
解决方法:
这意味着类承诺响应“interface”Comparable定义的方法.
你有这个(和任何其他“实现”声明)的优势,你可以“abstract”对象的类型和代码的代码.
考虑一下
class A implements Comparable {
....
}
class B implements Comparable {
....
}
class C implements Comparable {
....
}
然后,您可以编写可以使用Comparable而不是特定类型的代码:
public void doSomethingWith( Comparable c ) {
c.compareTo( other ); // something else...
}
并调用它:
doSomethingWith( new A() );
doSomethingWith( new B() );
doSomethingWith( new C() );
因为你并不关心类的类型是什么,所以你只关心它实现了接口.
这个(接口而不是实现的程序)是OO编程世界中最强大的技术之一,因为它促进了low-coupling.