封装就是:隐藏对象的信息;

                   留出访问的接口;
                   将类的某些信息隐藏在类内部,不允许外部程序直接访问;

                  通过该类提供的方法来实现对隐藏信息的操作和访问;

       特点:1.只能通过规定的方法访问数据。

                 2.隐匿类的实例细节,方便修改和实现。

上面都是理论,下面直接附上代码理解一下:

public class Student {
private String name; //姓名
private int age; //年龄
private String sex; //性别
private String address; //地址

public Student(){
    System.out.println("我是一个学生!");    
}

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public int getAge() {
    return age;
}

public void setAge(int age) {
    this.age = age;
}

public String getSex() {
    return sex;
}

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


public String getAddress() {
    return address;
}

public void setAddress(String address) {
    this.address = address;
}

}
这是个Student类,它里面有学生的属性和方法,对外提供方法可供其他访问者使用:比如下面的访问者:

public class Test {
public static void main(String[] args){

    //创建Student对象,获取性别
    Student st=new Student();
    st.setSex("男");          //使用student对象提供的方法
    System.out.println(st.getSex());
}

}