Re: [問題] 想請問interface的具體意義
※ 引述《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
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 29 篇):