看板java
标 题Re: [问题] 请问interface到底是做什麽用的?
发信站明日资星 (Sun Apr 16 01:07:55 2006)
转信站ptt!ctu-reader!ctu-gate!news.nctu!news.nsysu!InfoStar
※ 引述《[email protected] (28mm看世界)》之铭言:
> ※ 引述《[email protected] (C++)》之铭言:
> > 你说的这个应该是 abstract class 吧
> > interface没有任何"框框" java里面为什麽用implements配上interface
> > 就是因为interface不做任何预设动作 抽象来看只是告诉你有这个介面的class可以提供
> > 哪些功能
> > 如果你有个method在class里当做一个预设行为 继承它可以不改写 就是套用预设行为
> > (空的不做事也算是预设行为)
> > 这样在java里归类在abstract class
> 其实....我不喜欢用 abstract class, 因为它是继承关系
> 在物件 design principle 里....某条讲到说, 最好还是别用is-a, 多用has-a
> 又在某条法则里提到....细节应依赖於抽象, 抽象不应依赖於细节
> 最好的做法, 就是先用抽象来定义好藕合结构再用实作来完成它
> 所以....既然abstract class跟interface蛮接近的, 所以会习惯用interface
> 不过, 最近没碰到非用 abstract class 不可的程式倒是 @@b
虽然interface是abstarct class
可是觉得大家一直都把interface看在继承和实作的部分,
那的确会跟abstract class特性与应用分的不清不楚
想想开发者间的合作模式
interface在java的应用很广,也很重要
今天implement interface的人并不一定是你阿
为什麽jdbc里面大多是interface,像Connection,Driver.....
还有java不支援多重继承,透过interface来达到这个效果
如果今天要实作出一个有多绪(thread)的applet,你要怎麽作?
用打字的真的很麻烦,反正就是往分工模式想就比较能够体会
概念很简单,要用文字打出来还真是不容易...@@
--
※ Origin: 高科大明日资星 <bbs.mis.nkfust.edu.tw>
※ From : 61.62.54.234
※ Modify: <61.62.54.234> Sun Apr 16 01:07:55 2006
※ X-Info: Re: [问题] 请问interface到底是做什麽用的?
※ X-Sign: 1242A3B/MBfYg8wJYbkw (06/04/16 1:07:55 )