作者TonyQ (骨头 (MSN挂了))
看板java
标题Re: [问题] 想请问interface的具体意义
时间Mon Jan 22 18:41:26 2007
※ 引述《jaw109 (泼文章都是为了养小鸡)》之铭言:
: [前言]
: 是这样子的,我是C++的使用着
: 在阅读SoftwareSolutions书籍或文章的时候
: 常常会看见JAVA的interface
: 我可以理解interface存在的立场
: 但我更想知道interface更具体的使用....
: (或者,用C++的观念去理解...... if it is possible)
: [范例]
: 假设有个抽象类别,叫做交通工具
: 其下分别衍生出汽车与机车
: 然而,交通工具又引用着一个叫做电动雨刷的介面
: 我们都可以理解,所有的汽车都应该支援电动雨刷
: 而且所有的机车都应该不支援电动雨刷
个人觉得 interface比较像是"贴标签"
被贴上这个标签的东西,就会具有共同的特性。
像你说的例子,交通工具就不适合贴上"电动雨刷"的标签,
因为不是所有交通工具都有电动雨刷(机车没有)。
一个最简单的例子,comparable是一个常见的Java Interface,
只要被贴上comparble的class,都可以用compareTo的method做比较,
而不需要管它本来是甚麽型态或甚麽型别。
还有一个更简单的例子,
Serializable(可序列化) 常用在资料串流的处理,
它甚至不需要实做任何method,就只是告诉它的使用者,
『写我的人认为我可以是可序列化的,请你安心使用。』 XD
一点拙见^^"
--
String temp="relax"; | Life just like programing
while(buringlife) String.forgot(temp); | to be right or wrong
while(sleeping) brain.setMemoryOut(); | need not to say
stack.push(life.running); | the complier will
stack.push(scouting.buck()); | answer your life
stack.push(bowling.practice()); | Bone
everything
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.134.27.68