您的位置:首页 > 编程语言 > Java开发

java 私有是封装的一种形式

2016-05-08 10:32 253 查看
private:权限修饰符:私有的。用于修饰类中的成员(成员变量、成员函数)

私有的成员变量和成员函数(方法)只在本类中有效。

将age私有化以后,a类以外的其他类(例如b类),即使在b类中建立了a类中的对象也不能访问a类中的私有成员。

所以类PersonDemo不能直接访问age。

为了让其他访问一个类的私有变量,可以通过创建set和get的函数来提供访问私有变量的方式。利用set方法改变

age的值时,调用该方法的对象中的age的值将被改变。要非常注意的一点是,改变的不是private int age里的age值,

而是改变的某个对象中的age的值。每个对象被建立时,age在堆中的初始化值均为0。

成员变量有默认初始化值,即使没被赋值,也可以直接参与运算,而局部变量是没有默认初始化值得,必须先赋值

再参与运算。堆中的变量都是有初始化值的。

注意:私有仅是封装的一种表现形式。

之所以对外提供访问方式,就因为可以在访问方式中加入逻辑判断语句。
对方问的数据进行操作,提高代码的健壮性。

class Person
{
private int age;
public void setAge(int a){
if(a>0 && a<150)
{
age=a;

}
else
System.out.println("illegal age");
}

public int getAge(){
return age;
}

public void speak()
{
System.out.println(age);
}
}

class PersonDemo
{
public static void main(String[] args){
Person p=new Person();
p.setAge(180);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java private修饰符