举例来说:就如我们平时使用的电脑,我们不需要知道电脑内部具体的硬件cpu,显卡,内存大小型号等。电脑厂商就把这些用机箱封起来,我们只需要使用机箱对外提供的usb,鼠标,显示屏接口就可以,这样是不是就很方便
java中的封装是java三大特性之一,另外两个特性是继承和多态
java封装是指在创建一个类的时候,将类中的属性私有化,也就是使用private关键字修饰,私有属性不允许外界去访问,只能通过该类提供的方法来访问这些私有属性
封装的优点:
- 良好的封装能够减少耦合。
- 类内部的结构可以自由修改。
- 可以对成员变量进行更精确的控制。
- 隐藏信息,实现细节。
实例:
public class PersonTest {
//成员变量私有化
private String name;
private int age;
private double height;
//对成员属性提供getXXX()/setXXX()方法
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 double getHeight() {
return height;
}
public void setHeight(double height) {
this.height = height;
}
public static void main(String[] args) {
//创建一个对象
PersonTest personTest = new PersonTest();
//通过setXXX()方法赋值
personTest.setName("小马");
//通过setXXX()方法赋值
personTest.setAge(20);
//通过setXXX()方法赋值
personTest.setHeight(180);
System.out.println("你好我叫:" + personTest.getName() + ",我今年" +
personTest.getAge() + "岁" + ",我的身高为" +
personTest.getHeight() + "cm");
}
}
运行结果: