仔细看完。。。我当年就是看完这个之后彻底领悟了 [解决办法] 有本英文书忘了叫什么,介绍继承类和接口时时大致是这样描述的:inherit a class is "it likes something",inherit a interface is "doing likes something";英文大致是这样,也有点忘了,我个人觉得说的非常到位 [解决办法]
这本书绝对是面向对象入门宝典! ------解决方案--------------------
简单来说,用接口类型代替真实的类型,去访问它的方法。
如果没有接口,就只能反射了。
按照你写的: public class 类 { public void 方法(); } 我们再写一个 public class 另一个类 { public void 方法(); } 注意,类和另一个类没有继承关系。
如果没有接口,如果我们写这样一个方法: void foo1(类 obj) { for (int i = 1; i < 10000; i++) obj.方法(); } 现在我们希望这个方法也管上另一个类,请问怎么做? 我们只能再写一次: void foo1(另一个类 obj) { for (int i = 1; i < 10000; i++) obj.方法(); } 尽管方法体完全一样,一个字不差!
有了接口,可以这么写: void foo1(接口 obj) { for (int i = 1; i < 10000; i++) obj.方法(); } 这样,类和另一个类只要实现了接口,都可以尽管传进来。 [解决办法] 学了不少知识 谢谢 [解决办法]