封装性

封装性是面向对象的第一大特性,例子:

package javatest;

class Person1 {

	private String name; // 声明姓名的属性
	private int age; // 声明年龄的属性

	public void tell() { // 取得信息的方法
		System.out.println("姓名:" + getName() + ",年龄:" + getAge());
	}

	public String getName() { // 取得姓名
		return name;
	}

	public void setName(String n) { // 设置姓名
		name = n;
	}

	public int getAge() { // 取得年龄
		return age;
	}

	public void setAge(int a) { // 设置年龄
		age = a;
	}
}

public class Person {
	public static void main(String args[]) {
		Person1 pp = new Person1(); // 声明并实例化
		pp.setName("张三"); // 调用setName,设置姓名
		pp.setAge(-30); // 同上
		pp.tell();
	}
}

  结果:

姓名:张三,年龄:-30

如果要加年龄判断可以在set方法里面添加,!!

 

1.类中的全部属性被封装,封装之后的属性必须通过setter和getter进行访问。

2.面向对象的封装性本身并不是单单指private关键字, 要记住的是:用private声明的属性或方法只能在类的内部被调用,而不能在类的外部调用

3.类中方法的调用,直接用方法名就可以, 如果非要强调是本类中的方法,也可以在调用时用“this.方法名称()”的形式。建议使用这样的方法写代码,!!!

 

posted on 2011-11-30 15:25  wangbokun  阅读(185)  评论(0编辑  收藏  举报

导航