温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

封装在java中怎么实现

发布时间:2026-10-26 19:48:17 来源:亿速云 阅读:94 作者:小樊 栏目:编程语言

在 Java 中,“封装(Encapsulation)” 是面向对象编程(OOP)的四大特性之一,核心思想是:
把对象的属性隐藏起来,只通过公共的方法来控制对属性的访问和修改。


一、封装的基本原则

  1. 属性私有化(private)
  2. 提供公共的 getter / setter 方法
  3. 在方法中加入控制逻辑(如校验)

二、最基础的封装示例

1️⃣ 不使用封装(不推荐)

class Person {
    String name;
    int age;
}

❌ 外部可以直接修改,不安全

Person p = new Person();
p.age = -100; // 不合理

2️⃣ 使用封装(推荐 ✅)

public class Person {
    // 1. 属性私有
    private String name;
    private int age;

    // 2. 提供 getter
    public String getName() {
        return name;
    }

    public int getAge() {
        return age;
    }

    // 3. 提供 setter(可加校验)
    public void setName(String name) {
        if (name != null && !name.isEmpty()) {
            this.name = name;
        }
    }

    public void setAge(int age) {
        if (age >= 0 && age <= 150) {
            this.age = age;
        } else {
            System.out.println("年龄不合法");
        }
    }
}

3️⃣ 使用方式

public class Test {
    public static void main(String[] args) {
        Person p = new Person();
        p.setName("张三");
        p.setAge(20);

        System.out.println(p.getName());
        System.out.println(p.getAge());
    }
}

三、封装的好处

✅ 隐藏实现细节
✅ 提高安全性
✅ 方便后期维护
✅ 可以在赋值/取值时做控制


四、IDE 快速生成封装代码

Eclipse / IntelliJ IDEA

  • 右键 → Generate → Getter and Setter
  • 自动生成 private 属性 + get/set

五、进一步封装(构造方法)

public Person(String name, int age) {
    setName(name);
    setAge(age);
}

六、总结一句话

Java 封装 = private 属性 + public 方法 + 控制逻辑

如果你是想问 “接口封装 / 模块封装 / 服务封装”,也可以告诉我,我可以给你更具体的例子(如 Spring、API、工具类封装等)。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手