就是这个样子的有些动西真的需要和人聊一聊.
学了java着么久接口还理解不好.....
改为带接口:
public interface C
{
public void w();
}
public A implements C
{
public void w(){...}
}
public B
{
protected C c
}
to : t() Thanks 我需要的就是更深刻的理解,对书本上的东西的照般我个人人为
没有意义..过几天研究pattern时一定要来捧场,呵呵.
to combot() ."在我的感觉里接口并不能实现多少的代码重用,代码的重用主要体现在类的继承和组合上,跟借口并没有太多关系。"-------我想如果一个类可以独立的完成任务那么他就有被代码重用的条件..
我想我该好好的再看一看Thinking in Java了.
我一直人为java的接口是对java的单一继承的补充与进步.
把接口理解为协议-------很精彩,I see .thanks
to all my friend :我还有的疑问是:
如过用的是java自身的api的接口,那么实现他的若干个类也许可以没有关系.
但如过在你设计的程序内部,实现同一个你自己定义的接口的两个类之间一定存在这某种关系,----------我在思考这种关系.
接口也可以理解为协议。实现了接口,也就向其他类声明它支持这个协议,任何类可以按照这个协议和它交流。至于它如何实现协议,就是和接口无关。打个比方,一个人,它既是领导又是他领导的下级,它有两个接口1.对上级2.对下级。另一个人只有上级没有下级,他只实现上级接口。还有的人,比较正直,有上级,但不会拍马屁功能,也没有实现上级接口。这就是接口比继承灵活的地方,就象role assigned to a class.
另外,使用接口可以使classes hierarchy趋于扁平。但是如果classes体系非常之复杂,class 继承可能更适应。
to zgpp(上帝忘记了我是他爸):
就是这两个类互相调用,不可分割---------
public class A
{
protected B b;
}
public class B
{
protected A a;
}
就是这个样子的有些动西真的需要和人聊一聊.
学了java着么久接口还理解不好.....
改为带接口:
public interface C
{
public void w();
}
public A implements C
{
public void w(){...}
}
public B
{
protected C c
}