31-封装
封装
该露的露,该藏的藏
◆我们程序设计要追求“高内聚,低耦合"。
高内聚就是类的内部数据操作细节自己完成,不允许外部干涉;
低耦合:仅暴露少量的方法给外部使用。
封装(数据的隐藏)
◆通常, 应禁止直接访问一个对象中数据的实际表示,而应通过操作接口来访问,这称为信息隐藏。
◆记住这句话就够了: 属性私有,get/set
作用
- 提高程序安全性,保护数据
- 隐藏代码的实现细节
- 统一接口
- 系统可维护性增加了
package com.oop.Demo02; public class Student { private String name;//属性私有,private private int age; private char sex; //提供一下可以操作私有属性的方法, //public的get和set的方法 public String getName(){ //获得这个数据 return this.name; } public void setName(String name){ //给这个数据设置值 this.name=name; } //Alt+Insert快捷生成get和set方法 public int getAge() { return age; } public void setAge(int age) { if(age<120&&age>0){ this.age = age; }else { this.age = 0; } } }
使用get和set
package com.oop.Demo02; public class Applicatinon { public static void main(String[] args) { Student s1 = new Student(); s1.setName("张三"); System.out.println(s1.getName()); s1.setAge(999); System.out.println(s1.getAge()); } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现