首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么不返回'plaque‘类内部的值

在编程中,返回'plaque'类内部的值可能有以下几个原因:

  1. 封装性:类是面向对象编程的基本单位,它将数据和操作封装在一起。封装的目的是隐藏类的内部实现细节,只暴露必要的接口给外部使用。返回类内部的值会破坏封装性,使得类的内部状态可以被外部直接访问和修改,增加了代码的耦合性和不可预测性。
  2. 数据一致性:类内部的值可能会被多个方法使用,并且这些方法可能会对这些值进行修改。如果直接返回类内部的值,外部代码可能会在不同的时间点获取到不一致的数据,导致程序的行为不可预测。通过提供封装的接口,类可以对数据的读写进行控制,确保数据的一致性和正确性。
  3. 可维护性:类的内部实现可能会随着需求的变化而发生改变,如果直接返回类内部的值,那么外部代码可能会依赖于这些内部实现细节,导致代码的耦合性增加。当类的内部实现发生变化时,需要修改所有依赖于这些内部实现的外部代码,增加了代码的维护成本。通过提供封装的接口,类的内部实现可以自由变化,而不会对外部代码造成影响。

综上所述,为了保持封装性、数据一致性和可维护性,不建议直接返回'plaque'类内部的值。相反,应该通过提供合适的接口方法,让外部代码通过调用这些方法来获取类内部的值。这样可以确保类的内部状态的安全性和一致性,并且减少代码的耦合性,提高代码的可维护性。

腾讯云相关产品和产品介绍链接地址:

  • 云服务器(ECS):https://cloud.tencent.com/product/cvm
  • 云数据库 MySQL 版(CDB):https://cloud.tencent.com/product/cdb
  • 云原生容器服务(TKE):https://cloud.tencent.com/product/tke
  • 人工智能平台(AI Lab):https://cloud.tencent.com/product/ailab
  • 物联网开发平台(IoT Explorer):https://cloud.tencent.com/product/iothub
  • 移动推送服务(信鸽):https://cloud.tencent.com/product/tpns
  • 云存储(COS):https://cloud.tencent.com/product/cos
  • 区块链服务(BCS):https://cloud.tencent.com/product/bcs
  • 腾讯云元宇宙:https://cloud.tencent.com/solution/virtual-world
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • MCE | 淀粉样蛋白沉积或是阿尔茨海默症发展“驱动者”

    近日,Cell在线发表的论文 “Spatial Transcriptomics and In Situ Sequencing to Study Alzheimer’s Disease” 中,研究团队在 AD 小鼠模型中,利用空间转录组学研究淀粉样斑块周围直径 100 μm 的组织结构域的转录变化,证明了丰富的髓鞘和少突胶质细胞基因 (OLIGs)的基因共表达网络的早期改变,而斑块诱导基因(PIGs)的多细胞基因共表达网络涉及补体系统、氧化应激、溶酶体和炎症,在疾病的后期表现突出。研究人员通过对小鼠和人脑切片的原位测序,证实了细胞水平上观察到的大部分变化。全基因组空间转录组分析提供了一个新的方法,以揭示 AD (淀粉样蛋白沉积) 和其他脑疾病的致病标志物周围的细胞网络失调。

    01

    读书笔记 之《Thinking in Java》(对象、集合、异常)

    一、前言:     本来想看完书再整理下自己的笔记的,可是书才看了一半发现笔记有点多,有点乱,就先整理一份吧,顺便复习下前面的知识,之后的再补上。     真的感觉,看书是个好习惯啊,难怪人家说“书籍是人类进步的阶梯”。之前学知识,喜欢网上找份教程,看点视频,照着做呗,秉着”我做过的东西反正别人肯定玩过“的观念,一通乱学,学的又多又杂,现在细细想来,很多东西我只是学到了它的形,却没有学到它的神,只是在抄别人的代码。为什么这么做?这么写是出于什么考虑?我都一脸懵懂!而现在我喜欢看书,花时间来沉淀自己的知识,与

    08

    java基础学习_面向对象(下)03_day10总结

    ============================================================================= ============================================================================= 涉及的知识点有: 1:方法的形式参数和方法的返回值的问题(理解)     (1)方法的形式参数为引用数据类型     (2)方法的返回值类型为引用数据类型     (3)链式编程 2:包(理解)     (1)包其实就是文件夹。     (2)包的作用     (3)包的定义(掌握)     (4)包的注意事项(掌握)     (5)带包的编译和运行     (6)Java中不同包下的类与类之间的访问 3:导包(掌握)     (1)导包的原因     (2)导包的格式     (3)package,import,class有没有顺序关系呢? 4:权限修饰符(掌握)     (1)权限修饰符的权限测试     (2)这四种权限修饰符在任意时刻只能出现一种。 5:类及其组成所使用的常见修饰符(理解)     (1)修饰符的分类     (2)常见的类及其组成所使用的修饰符       1.修饰类的       2.修饰成员变量的       3.修饰构造方法的       4.修饰成员方法的     (3)另外比较常见的修饰符组合规则 6:内部类(理解)     (1)把类定义在另一个类的内部,该类就被称为内部类。     (2)内部类的访问特点     (3)内部类的分类(内部类的位置)     (4)成员内部类     (5)成员内部类的面试题(填空)     (6)局部内部类     (7)匿名内部类(很重要掌握)     (8)匿名内部类在开发中的使用     (9)匿名内部类的面试题(补齐代码) ============================================================================= ============================================================================= 1:方法的形式参数和方法的返回值的问题(理解) (1)方法的形式参数为引用数据类型: 1.方法的形式参数为类名时:需要该类的对象。(匿名对象的时候已经讲过了) 2.方法的形式参数为抽象类名时:需要该抽象类的子类对象。 3.方法的形式参数为接口名时:需要该接口的实现类对象。 (2)方法的返回值类型为引用数据类型: 1.方法的返回值类型为类名时:返回的是该类的对象。 2.方法的返回值类型为抽象类名时:返回的是该类的子类对象。 3.方法的返回值类型为接口名时:返回的是该接口的实现类的对象。 (3)链式编程     对象.方法1().方法2().方法3(). ……… .方法n(); 这种用法: 其实     在方法1()调用完毕后,应该一个对象;     方法2()调用完毕后,应该返回一个对象。     方法3()调用完毕后,应该返回一个对象。     …………     方法n()调用完毕后,返回的可能是对象,也可以不是对象。 ----------------------------------------------------------------------------- 2:包(理解) (1)包其实就是文件夹。 (2)包的作用: A:区分同名的类(即把具有相同类名的类放到不同的包中)。 B:对类进行分类管理。 a:包按照功能分 cn.itcast.add 增加功能的包           AddStudent 增加学生的类           AddTeacher 增加老师的类 cn.itcast.delete 删除功能的包           DeleteStudent 删除学生的类           DeleteTeacher 删除老师的类 cn.itcast.update 修改功能的包           UpdateStudent 修改学生的类           UpdateTeacher 修改老师的类 cn.itcast.find 查找功能的包           FindStudent 查找学生的类           FindTeacher 查找老师

    01
    领券