Java 笔记 封装(Encapsulation)

封装(Encapsulation) 是面向对象编程(OOP)的核心特性之一,它的意思是:

"把对象的内部数据(状态)和实现细节隐藏起来,只通过公开的方法(接口)来访问或修改。"

✅ 封装的目的

  • 隐藏实现细节

  • 保护数据安全

  • 简化对外使用方式

  • 增强类的可维护性和可复用性


🧱 封装的典型写法(Java 规范)

  1. 属性设为 private

  2. 通过 public 的 getter/setter 方法暴露必要的访问方式

java 复制代码
public class Person {
    // 1. 私有字段,外部不能直接访问
    private String name;
    private int age;

    // 2. 公共方法,控制访问
    public String getName() {
        return name;
    }

    public void setName(String name) {
        // 可以加验证逻辑
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        if (age >= 0) {
            this.age = age;
        }
    }
}
作用 举例
控制访问权限 不让外部直接修改 age 为负数
隐藏复杂性 隐藏内部计算逻辑、算法等
方便维护和升级 改变内部实现时不影响使用者
增强安全性 限制对关键数据的非法操作

写小说也写代码,左手架空世界,右手现实逻辑。

📚 欢迎来看博客,起点同笔名在写小说,欢迎来找我玩。

https://my.qidian.com/author/433910170/

相关推荐
http阿拉丁神猫2 小时前
Go语言入门笔记:从基础到开发环境搭建(二)
开发语言·笔记·golang
HRBorderInsight5 小时前
马来西亚人均收入一个月多少钱,个人薪资和家庭收入要分开看
经验分享·笔记
又見山6 小时前
本地 Markdown 与数据主权:你的笔记到底属于谁
笔记·obsidian
撩得Android一次心动8 小时前
Jetpack Compose 知识点整理2【个人用】
android·笔记·学习·kotlin·compose
cao23338 小时前
关于 x1 y1 等变量名冲突的指正(校对版)
笔记
Demons_kirit9 小时前
CTFHub 信息泄露通关笔记:Git泄露 Log - 教程
笔记·git·网络安全
xhyu6110 小时前
【学习笔记】图像质量评估方法 (5.生成图像是否符合用户要求)
笔记·学习·计算机视觉
2601_9611462010 小时前
实验室用等离子表面处理设备处理新能源汽车塑料件的一点记录
笔记·汽车·设备
知产xiao_xin11 小时前
专利主体及权利归属
经验分享·笔记·知识产权
学电子她就能回来吗11 小时前
LeetCode Hot 100|普通数组专题学习笔记(零基础版)
笔记·算法·leetcode