|
|
|
|
|
简直搞笑,interface是面向对象的精髓,怎么可能不相容。
|
|
|
interface太经典了,好好补补
|
|
|
com的接口就是一切.正是面象对象设计的升华.
|
|
|
对,不理解Interface与Class的关系,就学不会面向对象。 举个不是很恰当的例子: 虎 是一个Interface 东北虎 是符合虎这个Interface的一个Class 华南虎 是符合虎这个Interface的另一个Class Interface指明了某一些事物共性的行为,它不关心实现的细节(对外屏蔽了实现细节)。 Class则重点对Interface的行为进行实现。 |
|
|
楼上的各位老师说得都对,在代码的实现上,interface确实对应一个class,这个也是我感到头疼的地方,我觉得那个class只是为了实现interface,好像和类的设计有点撤不上关系,对于这个问题的提出我也是在实际运用到interface之后才遇到的,在之前,我的想法和楼上的各位一样.
我现在讲我遇到的实际问题给大家讲一下. 我在设计一个能够实现财务上扎帐的接口,由于先前设计的原因,要设计出这个功能,我必须使用到至少4个类,但是又不是所有的情况我都要使用到这4各类,不同的情况,使用的类也会不同. 在最开始,我就直接将这4个类定义为接口,但是发现这样的封装程度好像不够,在扎帐的时候写得代码比较多. 后来我就定义了一个名为Izz的接口,将不同的情况定义为不同的接口方法.这里其实就是用那个接口类来调用先前的那4个类. 这时我就遇到了问题,接口到底是按照类的原则来定义还是按照功能模块来定义. 这几天我一直在考虑这个问题,请老师们不吝赐教,谢谢 |
|
|
在最开始,我就直接将这4个类定义为接口,但是发现这样的封装程度好像不够,在扎帐的时候写得代码比较多.
你在接口继承类中实现的代码为什么会比定义一个接口实现的代码要多? |
|
|
我的设计前提是通过接口方法,将操作逻辑封装了, 但是这个操作逻辑可能要使用到几个类.还望楼上小李指教
|
|
|
如果你项目够大,并且那4个类有点逻辑意义的话,何不在组件级别上再建一接口并在其下定义不同接口方法来实现不同情况对前面4个类的调用。
也就是说4个类也定义成接口但对最终用户透明,然后再用一接口将其封装供最终用户调用。 |
|
|
谢谢李老师的提示,以后小弟还有问题还望多多指教
|
|