什么是封装

yzk5 / 2023-08-28 / 原文

什么封装


  • 该露的露,该藏的藏

  • 我们程序设计要追求:“高内聚,低藕合“。高类聚就是类的内部数据操作细节自己完成的,不允许外部干涉;低藕合:仅暴露少量的方法给外部使用。

  • 封装(数据的隐藏)

    1. 通常,应禁止直接访问一个对象数据的实际表示,而通过操作接口来访问,这称为信息隐藏。

    2. 记住这这句话就够了:属性私有,get/set

package oop.Demo04;

/**
* 1、提高程序的安全性,保护数据
* 2.隐藏代码的实现细节
* 3.统一接口
* 4.系统可维护性增加了
*/
public class Application {
   public static void main(String[] args) {
       Student s1 = new Student();
       s1.setName("杨志康");

       System.out.println(s1.getName());
       s1.setAge(88);//不合格
       System.out.println(s1.getAge());
  }
}

package oop.Demo04;
//类
public class Student {
   //调用 属性私有
   private String name;//名字
   private int id;//学号
   private char sex; //性别
   //提供一些可以操作这个属性的方法!
   //提供一些public 的get、set方法
   private  int age;
   //get 获得这个数据
   public String getName(){
       return this.name;
  }
   public int getAge(){
       return age;

  }
   public void setAge(int age){
       if (age>120||age<0) {
           this.age = 3;
      }else {
          this.age = age;
      }

  }

   //set 给这个数据设置值
  public void setName(String name){
       this.name = name;
  }
  //alt + insert
}