封装

原创 2018年04月16日 22:38:38

封装

封装是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。

怎么去强制要求不能直接使用成员变量呢?

针对这种情况,Java就提供了一个关键字 private

private:是一个权限修饰符

private:私有的。可以修饰成员变量和成员方法。

注意:被private修饰的成员只能在本类中访问。

/*
 封装和private的应用:
  A:把成员变量用private修饰
  B:提供对应的getXxx()和setXxx()方法
*/
//定义学生类
class Student {
 //姓名
 private String name;
 //年龄
 private int age;
 
 //姓名获取值
 public String getName() {
  return name;
 }
 
 //姓名设置值
 public void setName(String n) {
  name = n;
 }
 
 //年龄获取值
 public int getAge() {
  return age;
 }
 
 //年龄赋值
 public void setAge(int a) {
  age = a;
 }
}

//测试类
class StudentTest {
 public static void main(String[] args) {
  //创建学生对象
  Student s = new Student();
  
  //使用成员变量
  //错误:被私有修饰了,外界不能直接访问了
  //System.out.println(s.name+"---"+s.age);
  System.out.println(s.getName()+"---"+s.getAge());
  
  //给成员变量赋值
  //s.name = "xiaohua";
  //s.age = 20;
  //通过方法给赋值
  s.setName("rose");
  s.setAge(17);
  System.out.println(s.getName()+"---"+s.getAge());
 }
}
/**
get 和set的使用方法 
 1: 首先是定义了一个类 在这个类中有有一些私有变量 
 但是私有变量只能在本类中使用 在别的类中是不可以使用的 
 所以经过一些在本类中的一些共有的方法的设置 使他们去访问那些私有变量
 在外面我们就只调用这些方法就可以了
 所以就有了get和set方法 get 方法是获取数据 set方法是设置数据 
 通过这样的方法就可以实现这样的事情 就是将这些私有变量设置值 

*\

收藏助手
不良信息举报
您举报文章:封装
举报原因:
原因补充:

(最多只允许输入30个字)