Java 面向对象——02封装

        在 Java 编程中,面向对象的封装(Encapsulation)是一个核心概念,它指的是将对象的状态(数据)和行为(方法)结合在一起,并将对象的实现细节隐藏起来,只暴露必要的接口。这种方式可以增强代码的模块化,维护性和安全性。

1.定义封装

        封装是将数据(成员变量)和操作数据的方法(成员方法)封装到一个单一的类中,并且隐藏内部实现细节,只通过公开的接口与外界进行交互。

2.访问控制修饰符

  • private:私有的,仅在类的内部可见。
  • default(无修饰符):包内可见。
  • protected:子类和同一包中的类可以访问。
  • public:对所有类都可见。

3.代码示例

public class Person {
    // 私有字段
    private String name;
    private int age;

    // 公共构造函数
    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    // 公共的 getter 方法
    public String getName() {
        return name;
    }

    // 公共的 setter 方法
    public void setName(String name) {
        this.name = name;
    }

    // 公共的 getter 方法
    public int getAge() {
        return age;
    }

    // 公共的 setter 方法
    public void setAge(int age) {
        if (age > 0) {  // 简单的验证
            this.age = age;
        }
    }
}

4.封装的好处

  • 控制访问权限:通过设置访问权限,可以限制对类的内部数据的直接访问,从而保护数据的完整性。
  • 提高灵活性:可以随时改变数据的实现方式,而不需要改变与其交互的代码。
  • 易于维护:隐藏了实现细节,只暴露公共接口,使得类的使用者不必了解其内部实现,只需关注如何使用其提供的方法。
  • 增强安全性:防止外部直接修改数据,从而避免数据的不一致性。

5.封装的实践

  • 数据隐藏:将数据成员设为 private,并提供公共的 getter 和 setter 方法来访问和修改这些数据。
  • 只暴露必要的方法:类只暴露对外使用的公共方法,隐藏内部实现细节。

        封装是面向对象编程的基础之一,通过封装,Java 程序可以更好地管理代码的复杂性,并提供更强的代码安全性和灵活性。

  • 10
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值