1、概念
是指隐藏对象的属性和实现细节,仅对外提供公共访问方式
2、好处
a)将变化隔离
b)便于使用
c)提高复用性
d)提高安全性
3、原则
a)将不需要对外提供的内容都隐藏起来
b)把属性都隐藏,提供公共方法对其访问
4、封装的表现形式之一——private(私有)
private关键字:权限修饰符;用于修饰类中的成员(成员变量,成员函数);私有只在本类中有效
常用之一:
将成员变量私有化,对外提供对应的set,get方法对其进行访问。提供对数据访问的安全性
如:我有一个人对象,而年龄这一属性我不想被对象访问,我就可以将其设为private
class Person//描述人物对象的类
{
private int age;//封装年龄
public void setAge(int a)//提供访问方法,并判断是否有效
{
if(a<150&&a>0)
{
age=a;
speak();
}
else
System.out.println("feifa");
}
public int getAge()//提供获取方法
{
return age;
}
public void speak()//对象的说的功能
{
System.out.println("age="+age);
}
}
class PersonDemo
{
public static void main(String []args)
{
Person p=new Person();//创建人物
p.seAge(40);//利用封装提供的访问方法进行修改年龄属性
p.speak();
}
} |
|