看板 [ java ]
討論串[問題] 面試時被問到介面功能
共 14 篇文章

推噓1(1推 0噓 1→)留言2則,0人參與, 最新作者popcorny (畢業了..@@")時間10年前 (2013/10/17 15:49), 編輯資訊
1
0
0
內容預覽:
我覺得應該要這樣看. 多重實作繼承很複雜難用.. 所以JAVA把繼承分成單一實作繼承(class)跟多重介面繼承(interface). 所以interface算是解決多重"實作"繼承複雜的問題. 但是沒有解決多重(介面)繼承signature collision的問題... --. 發信站:

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者sbrhsieh (十年一夢)時間10年前 (2013/10/17 16:25), 編輯資訊
0
0
0
內容預覽:
這個我了解,針對其他版友的文是我覺得所提的點不能拿來說明「Java 選擇. interface 實現多重介面並捨棄多重實作繼承」是比較好的作法。. pure abstract class 本身與 Java interface 是等效的,沒有引入 interface. (有別於 class)不代表就沒
(還有46個字)

推噓14(14推 0噓 0→)留言14則,0人參與, 最新作者Killercat (殺人貓™)時間10年前 (2013/10/17 19:09), 編輯資訊
1
0
1
內容預覽:
其實這邊有個很有趣的地方,可以給大家參考一下。. 這種東西在C++裡面會直接編譯器給你打X. 你一定至少得能用Koenig lookup能解析出來的形式才會讓你編過去. 所以其實這不是問題,語言幫你解決了:就是直接不給過. 給個sample code大家去玩玩看. #include <stdio.h
(還有1844個字)

推噓0(0推 0噓 1→)留言1則,0人參與, 最新作者Chikei ( )時間10年前 (2013/10/18 00:58), 編輯資訊
0
0
0
內容預覽:
1. C++那個不叫ADL(Koenig lookup),ADL指的是當現有scope裡面找不到,. 而且也不在member function裡面的時候,怎麼擴大查找*unqualified* function name. 舉例來說. int main(int argc, char *argv[])
(還有714個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者yrulee (Face the truth.)時間10年前 (2013/10/18 01:55), 編輯資訊
1
0
0
內容預覽:
繼承本身就不是很有彈性,會被parent綁死. 多重繼承會帶出更多的問題,所以單繼承是一個解法而非問題. 而介面是為了補強單繼承這個解法所帶來的問題. 個人覺得Obj-C用 "Protocol" (協定) 就比 interface 好得多. 當一個Obj-C class需要實作 protocol,通
(還有221個字)