今天听了张老师讲java中的封装技术。对于这点新的知识,我写成读书笔记,发表一下!感觉好的东西就应该拿出来让大家都看一下。
public class Student { //封装的代码
private String name;
private int age;
public Student(){} //无参数构造 一些技术方便
public Student(String name,int age){ //全参构造 一些具体的对象方便
//this.name = name; 这样写不好
setName(name); //采用封装的思想写代码 安全有效便于修改
//this.name = age; 这样写不好
setAge(age); //写一次,其他地方调用(代码的复用)
}
public String getName(){
return name;
}
public void setName(String name){
this.name = name;
}
public int getAge(){
return age;
}
public void setAge(int age){
if(age>0&&age<130){
this.age = age; //this.age代表属性age age是局部变量
}
else{
System.out.println("age error");
}
}
}
public class TestStudent {
public static void main(String[] args) {
Student s = new Student();
s.setName("Li");
//s.age = 1000; //合法不合理违背oo基本思想的
s.setAge(1000);
}
}
在写封装的时候需要注意一些关键的地方,遵循一定的规则,这样写出来的代码才叫封装。
类中的非常量的属性一般都要用封装的技术。写类的时候,先把变量私有了,在写方法。私有的变量只能在类内部调用。一般写类的时候要写两个构造,一个是无参数的构造,一个是有全部私有变量的构造。无参数的构造方便方便技术,有参数的构造方便创建一些对象。封装的好处就是安全和有效。在类中提供public的方法。方便外界调用。写封装的时候,的四个步骤:
1,给变量加private修饰符;
2,写无参数和全参数的构造器。
3,写set,get方法来读写private变量。
4,在全参数的构造中来修改变量值。