java封装
-
该露的露,该藏得藏
- 我们程序设计要追求"高内聚,低耦合"。高内聚就是类的内部数据操作细节自己完成,不允许外部干涉;低耦合:仅暴露少量的方法给外部使用.
-
封装(数据的隐藏)
- 通常,应禁止直接访问一个对象中数据的实际表示,而应通过操作接口来访问,这称为信息隐藏。
- 属性私有 private
- 使用get/set方法来操作封装后属性
实例代码如下:
//创建一个学生类
public class Student{
public static String hobby = "爱上java";
//封装班级
private String class = "129";
//封装年龄
private int age;
//提供公开的get/set 方法,给外部调用
public void setAge(int a){
//年龄,不能让别人随便给
int b = 2; //a和b都是局部变量,只在setAge方法类使用
if(a>130||a<=0){
Systom.out.println("你提供的年龄不合法!请重写输入:");
}else{
age = a;
}
}
public int getAge() {
return age;
}
public void setName(String n) {
name = n;
}
public String getName() {
return name;
}
//类里面有一种特殊的方法:构造方法,它是用来创建对象(实例化对象,初始化对象)
//语法:访问修饰符 类名(参数列表){方法体}
public Student() {//无参构造,创建的是一个空的对象
System.out.println("构造方法");
}
//有参构造,创建的对象是可以初始化数据的
public Student(String name,int age) {
//全局变量和局部变量同名,需要进行区分
//this代表当前对象本身,你使用的对象是谁,this就代表谁
//this();//表示调用当前对象自己的无参构造,必须放在构造方法的第一行
//super代表父类对象
super();//调用父类的无参构造,必须放在子类构造方法的第一行
this.name = name;
this.age = age ;
}
}
//创建一个测试类
public class TestStudent{
Student zs = new Student();
Student.study();
}