10.8為什么需要內部類

tij原文
我們已經看到了許多描述內部類的語法和語義,但是這并不能回答“為什么需要內部類”這個問題。那么,Sun公司為什么會如此費心地增加這項基本的語言特性呢?

一般來說,內部類繼承自某個類或實現(xiàn)某個接口,內部類的代碼操作創(chuàng)建它的外圍類的對象。所以可以認為內部類提供了某種進入其外圍類的窗口。


內部類必須要回答的一個問題是:如果只是需要一個對接口的引用,為什么不通過外圍類實現(xiàn)那個接口呢?

\color{red}{答案是:“如果這能滿足需求,那么就應該這樣做?!眪


那么內部類實現(xiàn)一個接口與外圍類實現(xiàn)這個接口有什么區(qū)別呢?

\color{red}{答案是:外圍類不是總能享用到接口帶來的方便,有時需要用到接口的實現(xiàn)。}


所以,使用內部類最吸引人的原因是?

\color{red}{答案是:每個內部類都能獨立地繼承自一個(接口的)實現(xiàn),}
\color{red}{所以無論外圍類是否已經繼承了某個(接口的)實現(xiàn),對于內部類都沒有影響。}


個人理解

內部類可以實現(xiàn)多重繼承。一個外圍類可以包含多個內部類,每個內部類都可以去實現(xiàn)一個接口。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容