JAVA 基础(7) 封装

本文深入探讨了面向对象编程的三大特性之一——封装。封装通过隐藏对象的内部细节,仅提供公共接口来访问,减少了模块间的耦合,便于维护和性能优化,同时也提高了代码的可重用性。文章介绍了封装的实现步骤,包括属性私有化、设置getter和setter方法,并给出了Java中Person类的实例。封装使得代码更易于理解和调试,降低了构建复杂系统时的风险。
摘要由CSDN通过智能技术生成

面向对象编程有三大特征:封装、继承和多态。这篇文章我们来认识封装。

1、封装介绍

利用抽象数据类型将数据和基于数据的操作封装在一起,使其构成一个不可分割的独立实体。数据被保护在抽象数据类型的内部,尽可能地隐藏内部的细节,只保留一些对外接口使之与外部发生联系。用户无需知道对象内部的细节,但可以通过对象对外提供的接口来访问该对象。

核心思想就是:把内部细节封装起来,只展现一些必要的部件。举个栗子:好像一台洗衣机我们这些买家只需要知道怎么操作它来洗衣服就行了,而卖家(厂家)需要把它的内部细节比如电机的启动是那个按钮来决定的,它如何定时的、在启动的时候如果开启洗衣机盖它怎么自己停止......

2、优点:

  • 减少耦合: 可以独立地开发、测试、优化、使用、理解和修改

  • 减轻维护的负担: 可以更容易被程序员理解,并且在调试的时候可以不影响其他模块

  • 有效地调节性能: 可以通过剖析确定哪些模块影响了系统的性能

  • 提高软件的可重用性

  • 降低了构建大型系统的风险: 即使整个系统不可用,但是这些独立的模块却有可能是可用的

3、封装的实现步骤 (三步)

1)将属性私有化private。

2)提供一个公共的(public)set方法,用于对属性判断并赋值。

3)提供一个公共的(public)get方法,用于获取属性的值。

代码例子:

public class Person { 
private String name; 
private int gender; 
private int age;

public String getName() {
    return name;
}​
public String getGender() {
    return gender == 0 ? "man" : "woman";
}
public void work() {
    if (18 <= age && age <= 50) {
        System.out.println(name + " is working very hard!");
    } else {
        System.out.println(name + " can't work any more!");
    }

  }
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值