一.封装
封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面.
例如:
学生类
public class Student {
/**
* @author DCH
*/
private String sname;
private String sex;
/*
* 引用另外一个类:address private Address address;
*/
//无参构造器
public Student(){
}
public String getSname() {
return sname;
}
public void setSname(String sname) {
this.sname = sname;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public Address getAddress() {
return address;
}
public void setAddress(Address address) {
this.address = address;
}
public void studentInfo(){
System.out.println("姓名为:"+this.sname);
System.out.println("性别为:"+this.sex);
System.out.println("地址为:");
this.address.addressIfo();
}
}
测试类
public class Test {
/**
* @author DCH
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Address address =new Address("湖北省", "襄阳市");
//Student stu1 = new Student("杜昌豪", "男", address);
//stu1.studentInfo();
Student stu2 = new Student();
stu2.setSname("张兰");
stu2.setSex("女");
//stu2.setAddress(address);
stu2.studentInfo();
}
}
如上面的代码所示,学生类里面存在数据属性,设置了访问权限为私有性private,这样外部其他的类中的对象就不能直接赋值,
所以设置了set的方法,可以使外部的对象去设置这些私有的属性.