疯狂java


您现在的位置: 疯狂软件 >> 新闻资讯 >> 正文

Java的private属性


 

 

  java属性有三种权限,public、default、private,也即公共、默认和私有。其中我们使用最多的就是private。通俗的来说private就是个人的,外部不能访问的。可是我们为什么要使用private的呢?使用之后还要setter和getter方法进行设置属性值和取得属性值,用public不是更好,在哪里都可以访问,简单不麻烦。看一个例子:

  public class People {

  public String name;

  public int age;

  }

  public class Test {

  public static void main(String[] args) {

  People p=new People();

  p.name="张三";

  p.age=-1;

  System.out.println("姓名:"+p.name+",年龄:"+p.age);

  }

  }

  输出结果:

  姓名:张三,年龄:-1

  可是年龄有负数的吗???

  一个类的属性,外部可以访问,但却不能象这样一般随意访问,因此使用private可以避免这一问题的产生。修改后的People:

  public class People {

  private String name;

  private int age;

  public void setAge(int age) {

  if (age > 0)

  this.age = age;

  else

  this.age = 0;

  }

  public void setName(String name) {

  this.name = name;

  }

  public int getAge() {

  return age;

  }

  public String getName() {

  return name;

  }

  }

  public class Test {

  public static void main(String[] args) {

  People p=new People();

  p.setName("张三");

  p.setAge(-1);

  System.out.println("姓名:"+p.getName()+",年龄:"+p.getAge());

  }

  }

  输出结果为:姓名:张三,年龄:0

 

  私有属性private的必要性。