java 板


LINE

今天面試時被面試官問Java為什麼要有介面 有繼承的機制不就夠了嗎? 我的回答是因為為了要解決Java不能多重繼承的問題 避免為了繼承而繼承破壞繼承的結構 也讓不同的類別可以分離出共同的介面 面試官接著問:還有呢? 這…我的功力不夠就答不出來了 所以想請教一下各位 除了上面的答案之外還有什麼更完善的答案呢? 謝謝 --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.192.28.81
1F:→ ssc24:開 規格書... 10/15 14:49
2F:→ ssc24:EX:JDBC,Serverlet 10/15 15:20
3F:→ ssc24:目的在制定規格書後,實作必須強迫依照相同的規格去各自實作 10/15 15:25
4F:→ sbrhsieh:以上所述是不是套在 abstract class 也通? 10/15 15:56
5F:→ ssc24:抽象類別,也有這樣子的意味在 10/15 16:04
6F:推 changyuheng:在精神上有繼承與組成的不同。繼承主要看「自己是什 10/15 16:15
7F:→ changyuheng:麼」。父母是什麼,自己就是什麼,而父母有什麼,自己 10/15 16:16
8F:推 changyuheng:理所當然順便有,但不是為了有這些東西而繼承。組成是 10/15 16:18
9F:→ changyuheng:指「由哪些東西組成」,或「要有什麼」,只要是指定要 10/15 16:19
10F:→ changyuheng:有的功能,一個不能少,即使為了有而有。好比音樂播 10/15 16:20
11F:→ changyuheng:放程式,是播放程式,所以繼承播放程式,順便有 play 10/15 16:22
12F:→ gn00742754:借這篇文章想問一下,abstract class跟interface有什麼 10/15 16:22
13F:推 changyuheng: 和 stop 的功能,而此音樂播放軟體被指定要有等化器 10/15 16:23
14F:→ gn00742754:不同的地方呢? 10/15 16:23
15F:→ changyuheng:的面板,因此「實現」了一套等化器「介面」。 10/15 16:25
16F:推 aiti80630:看到樓上推文,昨天剛好看到 http://ppt.cc/eYVf 10/15 16:26
17F:推 jengjye:兩者目的不同吧 可以把介面想成是一個類似合約的東西 10/16 08:55
18F:推 tomoyaken14:面試研究所的時候也有被問到... 10/16 09:47
19F:→ Killercat:我總覺得這題會這樣回答的 大概都是C++出身的較多XD 10/16 12:17
20F:→ Killercat:簡單地說 abstract是extract的意味 interface是contract 10/16 12:19
21F:→ Killercat:C++正好是少數支援OO語言裡面 沒有真正interface的語言 10/16 12:21
22F:→ larrycon:可插拔進行JUNIT TEST 10/16 14:46
23F:→ sbrhsieh:樓上講的 abstract class 也能做到 10/16 15:25
24F:→ Chikei:面試官這樣問的話這樣回答並沒錯阿,他是問Java為何要有 10/16 16:04
25F:→ Chikei:白皮書裡面有講,介面的引入就是為了解決單繼承的問題 10/16 16:06
26F:→ Chikei:精神之類的是為了建構出良好的型別架構才會這樣講的 10/16 16:10
27F:→ Chikei:但是語言機制本身當初的確是為了單繼承的問題才引入介面 10/16 16:12
28F:→ sbrhsieh:沒錯,排除多繼承的限制,我跟本想不出需要interface的理 10/16 16:23
29F:→ Schelfaniel:因為沒介面的話要多重繼承的程式會很難寫 :QQ 10/16 20:42
30F:→ jej:解答: 那麼你覺得呢? 10/17 13:18
31F:→ Killercat:其實做到與否是一回事 extract&contract概念上有別 10/17 18:34
32F:→ Killercat:同樣的東西繼承跟包含都能做到 不過兩者意義還是有差 10/17 18:35
33F:→ yrulee:繼承本身就不是很有彈性,會被parent綁死 10/18 01:17
34F:→ yrulee:多重繼承會帶出更多的問題,所以單繼承是一個解法而非問題 10/18 01:26
35F:→ yrulee:而介面是為了補強單繼承這個解法所帶來的問題 10/18 01:30
36F:→ yrulee:個人覺得Obj-C用 "Protocol" 就比 interface 好得多 10/18 01:37







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:e-shopping站內搜尋

TOP