封装探讨

//封装   属性 方法
将某些东西包装在一起,通过创建对象或使用静态的方法来调用,称为封装;封装其实就是有选择性地公开或隐藏某些信息,它解决了数据的安全性问题,增加代码的可读性和可维护性

 

Aname类中申明三个属性,将其封装在一个类中:通过对象来调用

 

例如   1:

	//属性 将其设为私有
	姓名 name 可以公开
	年龄 age  不可以公开
	性别 sex  有时可以公开 有时不可以公开


	class Aname{
	//属性封装
	private String name;
	private int age;
	private String sex;
	//方法封装
	public void setNAme(String name){
		this.name = name;
	}
	public String getNAme(){
		return name;
	}

	public void setAge(int age){
		this.age = age;
	}
      //没有提供getAge()表明是不想让外界看到的

	public void setSex(String sex){
		this.sex = sex;
	}
	public String getSex(){
		return sex;
	}
}

 

 

 

//例如  2 

package 类和对象;

/**
 * 
 * @author 百合
 *定义一个封装的老师类
 *使用set和 get方法
 */
public class CCATTeacher {
	//添加属性
	public String name;
	public int age;
	
	public void display(){
		System.out.println("大家好 !我是 " + name +",我今年" +age +" 岁" );
	}
	public String getName(){
		return name;
	}
	public void setName(String n){
		name= n;
	}
	
	public int getAge(){
		return age;
	}
	public void setAge(int a){
		if(a<22 || a>60){
			System.out.println("您设置的年龄不合理");
		}else {
			age = a;
		}
		
	}
}



package 类和对象;
/**
 * 
 * @author 百合
 *用来测试CCATTeacher 类
 */
public class CCATTeacherTest {

	public static void main(String[] args) {
		//实例化类
		CCATTeacher CT = new CCATTeacher();
		//当CT.display()写在这里的时候所有为null;
		
		//this.name = "张三";
			//使用对象来设置属性需要=;
			//CT.name = "张三";
			//CT.age = 20;
		
		//使用set来设置
			CT.setName("张山");
			CT.setAge(50);
			CT.display();
			
			
	}

}


 

 

 

你可能感兴趣的:(JAVA面向对象 封装)