2022.3.14 封装

封装

  • 该露的露,该藏的藏

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

  • 封装(数据的隐藏)

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

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

 

封装的意义

  1. 提高程序的安全性,保护数据

  2. 隐藏代码的细节

  3. 统一接口get,set

  4. 提高了系统的可维护性

复制代码
 1  package com.oop.demo04;
 2  3  //private 私有的
 4  public class Student {
 5      //属性私有
 6      private String name;//名字
 7      private char sex;//性别
 8      private int age;
 9 10      //提供一些可以操作这个属性的方法
11      //提供一些public的get,set方法
12 13      //set 给这个数据设置值
14      public void setName(String name) {
15          //这个类的name = 形式参数name
16          this.name = name;
17      }
18      //get 获得这个数据
19      public String getName() {
20          return this.name;
21      }
22 23      public char getSex() {
24          return sex;
25      }
26 27      public void setSex(char sex) {
28          this.sex = sex;
29      }
30 31      public int getAge() {
32          return age;
33      }
34 35      public void setAge(int age) {
36          if (age > 120 || age < 0) {
37              System.out.println("输入的年龄有误");
38          }else{
39              this.age = age;
40          }
41 42      }
43  }
44  /*    public static void main(String[] args) {
45          Student s1 = new Student();
46          //s1.name   属性私有不可以这么调用,public可以
47 48          s1.setName("小明");
49          System.out.println(s1.getName());
50          s1.setAge(130);//输出的年龄有误
51          s1.getAge();
52 53      }
54 55   */
复制代码

 

 

posted @   暴躁C语言  阅读(33)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示