1. 程式人生 > >面向對象系列二(封裝)

面向對象系列二(封裝)

cer hid ng- 實現 簡單的 rom style 聲明 lang

版權聲明:本文為博主原創文章,未經博主同意不得轉載。 https://blog.csdn.net/wangqingbo0829/article/details/35542011

? ? ? ?僅僅須要最簡單的操作就能實現一系列復雜的功能。是做一個個技術攻克的目的。

一臺精密儀器,一架家用電器,一個小米手機,這些可能我們都在用,或者用過。它們的內部都無比的復雜。使用了各種各樣的配件,運用了極多的原理和知識。我們在使用的時候都具有同樣的感受:簡單、方便、太好了!

面對原本復雜的東西,我們卻能通過簡介就能運用自如,甚至有的能無師自通,這都為什麽?這就用到了面向對象的封裝性。

? ? ? ?面向對象的封裝性就是將復雜的處理封裝在“盒子”的內部。僅僅憑借裝外殼的少量的button或鍵盤就能輕松實現功能。哦,原來如此。

? ? ? ?那麽面向對象是怎樣來實現封裝的呢?

? ? ? ?面向對象很巧妙地設置了一道門檻——訪問限制符。正是通過訪問限制符控制了外界對對象的直接訪問。避免像玻璃房一樣一切活動被別人盡收眼底。

? ? ? ?訪問修飾符就像門的鑰匙,手機的秘密。用得好,能夠保證安全;用得不好,自己給門鎖獨立的鎖。家人也別想進。

? ? ? ?訪問修飾符有:private

publicprotectedinternal?protected?internal

技術分享圖片

? ? ? ?不能把類型定義為protectedprivate和?protected?internal,由於這些修飾符對於包括在名稱空間中的類型沒有意義。因此這些修飾符僅僅能應用於成員。可是,能夠用這些修飾符定義嵌套的類型(,包括在其它類型中的類,由於在這樣的情況下,型也具有成員的狀態。

於是,以下的代碼是合法的:

public class OuterClass 
{
    protected class InnerClass
    {
       //etc.
    }
    // etc.
}

? ? ? ?假設有嵌套的類型,則內部的類型總是能夠訪問外部類型的全部成員。

所以,在上面的代碼中,InnerClass中的代碼能夠訪問0uterCIass的全部成員,甚至能夠訪問0utclass的私有成員。



面向對象系列二(封裝)