Java 的封装(通过讲故事来学习)

这篇具有很好参考价值的文章主要介绍了Java 的封装(通过讲故事来学习)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

故事开始,有一位名叫约翰的程序员,他正在写一个程序,需要在程序中使用一个人的年龄数据。他很快就写出了下面这段代码:

```
public class Person {
   public int age;
}
```

然后他在程序中创建了一个Person对象,并设置了这个人的年龄:

```
Person person = new Person();
person.age = 25;
```

这看起来很简单,但是约翰很快就意识到,这个代码存在一个问题。如果其他人使用这个类,他们可以直接访问和修改这个人的年龄。这就意味着如果有人意外地修改了这个人的年龄,可能会导致程序中其他部分出现未知的错误。

于是,约翰意识到需要对这个类进行封装。他重新设计了Person类,将年龄设置为私有属性,同时提供了公共方法来获取和设置年龄:

```
public class Person {
   private int age;
   
   public int getAge() {
       return age;
   }
   
   public void setAge(int age) {
       this.age = age;
   }
}
```

现在,其他人只能通过调用公共的getAge()和setAge()方法来访问和修改这个人的年龄。这样就可以避免不必要的错误和混乱。

通过这个故事,我们可以看到Java的封装是如何保护程序数据的安全性和可靠性的。它允许程序员隐藏实现细节并提供公共接口。这样,其他人就可以使用这个类而不必担心对数据的非法访问。文章来源地址https://www.toymoban.com/news/detail-439117.html

到了这里,关于Java 的封装(通过讲故事来学习)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【机器学习故事】“超市货架上的智慧:如何通过机器学习优化商品布局,引爆销售热潮“

    在一个明媚的早晨,阳光洒在你刚刚开张的超市上,货架上整齐地摆放着各式各样的商品,等待着顾客的光临。 你站在超市的入口,满怀期待地想象着顾客们满载而归的场景。然而,生意并没有你想象的那么好。你发现有些商品似乎总是卖不出去,而有些商品则经常缺货。你

    2024年01月21日
    浏览(34)
  • 从0开始python学习-51.pytest之接口加密封装

    目录 MD5加密 base64加密 rsa加密 1. 封装加密方法 2. 写入需要使用加密的接口yaml用例 1. 封装加密方法 2. 写入需要使用加密的接口yaml用例 需要先进行下载  pip install rsa 1. 生成rsa使用的公钥和私钥 2. 封装加密方法 这里读取的时候注意相对路径的问题 3. 写入需要使用加密的接口

    2024年01月21日
    浏览(26)
  • 从0开始python学习-52.pytest之ddt数据封装

    1. 判断是否为ddt数据 2. 处理数据 3. yaml用例中设置和使用数据

    2024年01月21日
    浏览(33)
  • Cadence Allegro 17.4学习记录开始04-制作封装STM32为例

    根据元器件的规格书,找到封装图片,分析资料 制作焊盘需要记住管脚补偿: 凡亿的资料有介绍: 这个STM32的封装有有个焊盘需要制作,都是表贴焊盘: 第一;选择单位 第二:选择焊盘种类和形状 第三:设置正规则焊盘的大小,热风焊盘和隔离焊盘是负片层才使用的,可以

    2024年02月12日
    浏览(35)
  • 从0开始python学习-50.pytest之多接口用例封装

    1. yaml用例设计--一个yaml中多个用例,且互相存在关联关系 2. 设计多接口用例读取封装 3. 将读取caseinfo的方法进行list格式的兼容设计

    2024年01月21日
    浏览(25)
  • ​蔚来自动驾驶,从 2020 年开始讲起的故事

    2020 年底,摆脱 2019 年阴霾的李斌先生,热情而兴奋,再一次说: 「欢迎来到蔚来日。」 那天蔚来发布了令人咋舌的智能驾驶硬件系统,4 块当时甚至还没有宣布量产日期的 Orin 芯片,11 路高清摄像头。 早在 ET7 只发布一个剪影的时候,热烈的蔚来粉丝就通过调整亮度看到了

    2024年02月07日
    浏览(38)
  • 用唐都实验箱通过微指令实现冒泡排序,原码一位乘和栈的相关操作

    摘要 1 前言 2 实验原理 2.1 数据格式 2.2 指令格式 2.3 数据通路框图 3 总体****设计 3.1 微指令流程图 3.2 指令系统 3.3 线路连接图 4 详细设****计 4.1 冒泡排序 4.2 原码一位乘 4.3 堆栈 5 实验结果 5.1 冒泡排序 5.2 原码一位乘 5.3堆栈 6 参考文献 摘要 本次课程设计首先对复杂模型机进

    2024年02月03日
    浏览(32)
  • Java LinkedHashMap获取最后一位

    在Java中,LinkedHashMap是一种可以保持插入顺序的Map集合,它维护了一个双向链表,记录了元素的插入顺序。因此,我们可以通过LinkedHashMap获取Map中的最后一个元素。 以下是一个获取LinkedHashMap中最后一个元素的示例代码: 在上面的代码中,我们首先创建了一个LinkedHashMap对象,

    2024年02月13日
    浏览(32)
  • Verilog学习二:设计一个一位全加器

    本部分将不再介绍Vivado工程的整体流程,将主要精力放在代码上面,具体的流程可参考:https://blog.csdn.net/crodemese/article/details/130438348 本部分代码也已上传到github:https://github.com/linxunxr/VerilogStudy 那么什么是全加器呢?我们都知道加法,即1+1=2,当个位数相加大于9时就需要进位。

    2024年02月08日
    浏览(36)
  • 【从零开始学习JAVA | 第十五篇】 多态

    本篇我们来解释一下什么是多态关系,多态关系属于面向对象三大特征的最后一个,可以说面向对象的重点就在多态,因此我们要学好面向对象编程思想,就要学好多态。         Java中的多态是指 同一类对象在不同情况下可能表现出不同的形态和行为。 它包括了 方法重

    2024年02月10日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包