Java面向对象——封装

巅峰迎来虚伪的拥护,黄昏见证真正的信徒。

 一、什么是封装?

封装是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。(就是将属性和方法封装到添加访问修饰符来限制访问权限,来达到信息隐藏的目的)

二、封装的好处

  • 将变化隔离,即内部功能的细节变化不影响使用。
  • 便于使用,即不同了解内部的具体实现。
  • 提高安全性。即只对外暴露一些简单的内容提供使用。
  • 提高重用性

三、封装的原则

  • 将不需要对外提供的内容都隐藏起来。
  • 将属性都隐藏,提供公共方法对其访问。

四、访问修饰符

  1. public(公开的):该类或非该类均可访问,权限最大。
  2. private(私有的):只有该类可以放访问,权限最小。
  3. protected(受保护的):该类及子类的成员可以访问,同一个包中的类也可以访问。
  4. 默认:同一个包中的类可以访问。

 封装实例:

public class PersonDemo {
  public static void main(String[] args) {
   Person p=new Person();
   p.age=21;
   p.speak();

  }
}
class Person{
    public int age;

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

 上图中,如果p.age=-21的话,就会出现安全隐患,我们可以使用访问修饰符控制权限。使用pricate 私有化后,我们需要对外提供访问方式,即getter和setter方法操作。需要给这个年龄提供对外访问方式。

五、属性封装的实现

  1. 修改属性的可见性来限制对属性的访问。
  2. 为每个属性创建一对赋值(setter)方法和取值(getter)方法,用于公开对这些属性的访问接口。

 注意:除非公开底层实现细节,否则应该将所有属性指定为private加以封装,让外界不能直接访问修改,只    能对外界提供set/get方法。使用属性封装,通过增加数据访问限制,增强了类的可维护性。

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

至此y

无论你在哪里,我都在这里

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值