封装的思想
众所周知封装作为Java三大特性之一,是Java的一个主要特性。今天就再深入的谈一下封装。封装顾名思义就是将特性进行隐藏起来使外界不能对其进行改动。总之一句话:封装的主要思想就是指将对象的属性和实现细节隐藏起来,只对外提供公共访问方式。封装的优点可以归纳为如下的几点:
封装的优点
- 将变量隔离
- 便于使用
- 提高了代码的复用性
- 提高了安全性
理解封装
首先隔离很好理解就是其他类不能直接访问本类的变量,本类只向外提供获取和设置变量的方法也就是通常使用的getXXX和setXXX方法。这样做的好处就是通过方法对变量进行操作。大家都知道if判断语句只能写在方法中,这样通过在方法中进行判断可以提高程序的健壮性。这正是封装的优点之一。此外将变量封装后可以提高代码的复用性,使用者不必关心类的具体实现细节可以直接使用封装后的类。最后也是最重要的一点安全性,封装能提高代码的安全性主要体现在我们时常在一个类中添加该类需要使用的方法,如果我们不用封装的思想直接将方法的细节暴露出去,这样就会有很大的安全隐患如此将细节暴露出去外人就很容易的去更改我们的变量及其它细节。所以如果我们将类中特有的方法封装起来这样就大大的提高了程序的安全性。
封装与private的关系
通常大家都认为成员只要用private修饰就是封装(实际上private也只能修饰成员),实际这是狭隘和片面的认识。封装能作为面向对象的三大特性之一,说明封装是一个很大的概念。我们有时候不用private也照样能实现对成员的封装。所以封装不仅局限于使用private修饰。