封装
封装是面向对象的思想的特性。对属性进行封装 对方法进行封装 对类进行封装 对项目进行封装。
今天主要讲属性的封装。
我们都写过类下面的成员变量,例如String name;只需要通过 对象.属性 = 初始化值 进行赋值。然而这样存在一定的隐患。这就需要我们对这些属性进行封装,只让别人看到我们想让他们看到的数据。
对属性进行封装:
1.对成员变量加修饰符 private
2.在类中书写 set和get方法进行对属性的赋值和取值
当成员变量加上private修饰符以后,除本类外,都无法调用。当我们想在其他类中使用这些变量时,就可以利用setter和getter方法对变量进行赋值和取值。
练习:
声明一个Cat类,属性 name age sex weight 必须是private修饰的
对属性进行赋值和取值。
class Cat {
//私有化变量
private String name;
private int age;
private char sex;
private double weight;
//有参构造
public Cat(String name, int age, char sex, double weight) {
this.name = name;
this.age = age;
this.sex = sex;
this.weight = weight;
}
public void setName (String name) {
this.name = name;
}
public String getName () {
return name;
}
public void setAge (int age) {
this.age = age;
}
public int getAge () {
return age;
}
public void setSex(char sex) {
this.sex = sex;
}
public char getSex() {
return sex;
}
public void setWeight (double weight) {
this.weight = weight;
}
public double getWeight () {
return weight;
}
}
public class Demo4 {
public static void main(String[] args) {
//要么使用set方法进行赋值,要么使用构造方法进行赋值。
//这两个选择一个即可
Cat cat1 = new Cat("Jerry", 7, '公', 9);
System.out.println(cat1.getName() + cat1.getSex() + cat1.getAge() + cat1.getWeight());
}
}
总结:
就是要对成员变量就赋值和取值的
1.对实体类中的成员变量进行加private修饰
2.在实体类中 set方法进行赋值 get方法进行取值!!!
其他的封装后续会再详细进行讲解。