首页 > 代码库 > 面向对象系列二(封装)
面向对象系列二(封装)
只需要最简单的操作就能实现一系列复杂的功能,是做一个个技术攻克的目的。一台精密仪器,一架家用电器,一个小米手机,这些可能我们都在用,或者用过。它们的内部都无比的复杂,使用了各种各样的配件,运用了极多的原理和知识。我们在使用的时候都具有相同的感受:简单、方便、太好了!面对原本复杂的东西,我们却能通过简单介绍就能运用自如,甚至有的能无师自通,这都为什么?这就用到了面向对象的封装性。
面向对象的封装性就是将复杂的处理封装在“盒子”的内部,只凭借装外壳的少量的按钮或键盘就能轻松实现功能。哦,原来如此。
那么面向对象是如何来实现封装的呢?
面向对象非常巧妙地设置了一道门槛——访问限制符。正是通过访问限制符控制了外界对对象的直接访问,避免像玻璃房一样一切活动被别人尽收眼底。
访问修饰符就像门的钥匙,手机的秘密。用得好,能够保证安全;用得不好,自己给门锁独立的锁,家人也别想进。
访问修饰符有:private、public、protected、internal 和protected internal
不能把类型定义为protected、private和 protected internal,因为这些修饰符对于包含在名称空间中的类型没有意义。因此这些修饰符只能应用于成员。但是,可以用这些修饰符定义嵌套的类型(即,包含在其他类型中的类,因为在这种情况下,类型也具有成员的状态。于是,下面的代码是合法的:
public class OuterClass { protected class InnerClass { //etc. } // etc. }
如果有嵌套的类型,则内部的类型总是可以访问外部类型的所有成员。所以,在上面的代码中,InnerClass中的代码可以访问0uterCIass的所有成员,甚至可以访问0utclass的私有成员。