上篇文章我們講到Java面向的一個重要特徵--“封裝”, 而內部類的使用可以提供更好的封裝。
回憶:
內部類的主要作用:
內部類提供了更好的封裝, 可以把內部隱藏在外部之內, 不允許同一個包中的其他類訪問該類
內部類的方法可以直接訪問外部類的所有資料, 包括私有的資料。
內部類所實現的功能使用外部類同樣可以實現, 只是有時候使用內部類更加方便。
而內部類可簡單分為4種, 分別是:
成員內部類
靜態內部類
方法內部類
匿名內部類
成員內部類
成員內部類是最常見的內部類, 也稱為普通內部類,
舉個例子:
通過這個簡單的例子, 我們知道成員內部類的使用方法以及一些特徵:
內部類可以任意使用存取控制符(public、protected、private等)
內部類中的方法可直接訪問外部類的資料,
創建內部類物件必須使用外部類物件, 而不能直接new一個內部類物件。
注意:外部類和內部類具有相同名字的成員變數或方法時, 內部類默認訪問內部類的成員變數或方法, 如果要訪問同名的外部類的成員變數, 可以使用this關鍵字。 如: