面向对象编程有三大特征分别为:

封装

继承

多态

封装

什么是封装?

  1. Java中的封装是指一个类把自己内部的实现细节进行隐藏,只暴露对外的公开的方法(setter和getter方法)。封装又分为属性的封装和方法的封装。把属性定义为私有的,它们通过setter和getter方法来对属性的值进行设定和获取。
  2. 封装最主要的功能在于我们能修改自己的实现代码,而不用修改那些调用我们代码的程序片段。适当的封装可以让程式码更容易理解与维护,也加强了程式码的安全性。

封装的好处

  1. 可以对成员变量进行更精确的控制。
  2. 可以对数据进行验证,隐藏实现细节 --类内部的结构可以自由修改。
  3. 封装最主要的功能在于我们能修改自己的实现代码,而不用修改那些调用我们代码的程序片段。适当的封装可以让程式码更容易理解与维护,也加强了程式码的安全性。

java访问修饰符

java的访问修饰符有四种分别为:

1)public修饰符,它具有最大的访问权限,可以访问任何的类、接口、等。

2)protected修饰符,受保护的,访问范围 :本类,派生类(跨包继承的派生类可以访问)、同包类.它主要的作用就是用来保护子类的有继承关系的才能访问。

3)default修饰符,它是针对本包访问而设计的,任何处于本包下的类、接口、等,都可以相互访问,即使是父类没有用protected修饰的成员也可以。

4)private修饰符,它的访问权限仅限于类的内部,是一种封装的体现,例如,大多数的成员变量都是修饰符为private的,它们不希望被其他任何外部的类访问。

以表格的形式可以很明显就可以看出他们的权限大小

java封装对象集合JSON_java

 (1)public:可以被所有其他类所访问。

(2)private:只能被自己访问和修改。

(3)protected:自身,子类及同一个包中类可以访问。

(4)default(默认):同一包中的类可以访问,声明时可以不写

封装的实现步骤

  • 封装:
  • 类:封装的是对象的属性和行为
  1. --将属性进行私有化private[其他类不能直接修改属性]
  2. --提供一个共有的(public)set+属性名方法,用于对属性判断并赋值
  3. --提供一个公共的(public)get+属性名的方法,用于获取属性的值.
  • 方法:封装的是具体的业务逻辑功能实现
  • 访问控制修饰符:封装的是具体的访问权限

注意:要实现类的封装需要先了解 java  访问修饰符.

程序演示

将属性进行私有化

public class Demo {
    private String name;
    private int age;
    
    
}

提供一个共有的(public)set+属性名方法,用于对属性判断并赋值

public class Demo {
    private String name;
    private int age;

//通过公开的 get方法获取属性name的值;

    public String getName() {
        return name;
    }

//通过公开的set方法有条件的修改属性name的值;

    public void setName(String name) {
        if (name.isEmpty() ) {
             = name;
        }

    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        if (age>1&&age<120) {
            this.age = age;
        }

    }
}