当前位置: 首页 > news >正文

面试题003:面向对象的特征——封装性

  •  Java规定了4种权限修饰,分别是:private、缺省、protected、public。我们可以使用4种权限修饰来修饰类及类的内部成员。当这些成员被调用时,体现可见性的大小。
  •  封装性在程序中的体现:

        场景1:私有化(private)类的属性,提供公共(public)的get和set方法,对此属性进行获取或修改       

        场景2:将类中不需要对外暴露的方法,设置为private
        场景3:单例模式中构造器private的了,避免在类的外部创建实例。

  •  根据程序设计的原则之一,理论上类的内聚性要高,耦合度要低。

                高内聚:类的内部数据操作细节自己完成,不允许外部干涉 

                        (Java程序通常以类的形态呈现,相关的功能封装到方法中。)

                低耦合`:仅暴露少量的方法给外部使用,尽量方便外部调用。

                        (给相关的类、方法设置权限,把该隐藏的隐藏起来,该暴露的暴露出去)

http://www.lryc.cn/news/405386.html

相关文章:

  • 森林防火,森林防火智能储水罐_鼎跃安全
  • 虚幻引擎,体积雾、体积光、镜头泛光
  • Python 机器学习求解 PDE 学习项目——PINN 求解二维 Poisson 方程
  • 微信小程序删除滑块 SwiperCell 自动收起 Van weapp van-swipe-cell 滑块自动收起 点击页面也自动收起滑块
  • 【vluhub】log4j注入漏洞 CVE-2021-44228
  • Redis核心技术与实战学习笔记
  • 力扣经典题目之->设计循环队列 的超详细讲解与实现
  • 【数据结构】排序算法——Lesson2
  • Ubuntu编译ffmpeg并添加cmake工程
  • Vue.js[组件(Component)]
  • 基于微信小程序+SpringBoot+Vue的校园自助打印系统(带1w+文档)
  • qt设置过滤器
  • 线上环境服务器CPU飙升排查
  • unity文字||图片模糊
  • 香薰学习笔记
  • iOS ------ weak的基本原理
  • 实时更新UI界面
  • 为什么Spring不推荐@Autowired用于字段注入
  • 【北京迅为】《i.MX8MM嵌入式Linux开发指南》-第三篇 嵌入式Linux驱动开发篇-第三十九章 Linux MISC驱动
  • 基于MobileNetv2的垃圾分类函数式自动微分-昇思25天打卡
  • STM32CubeIDE(CAN)
  • GO Channel使用详解(各种场景下的最佳实践)
  • SwiftUI 5.0(iOS 17)滚动视图的滚动目标行为(Target Behavior)解惑和实战
  • picker 构建记录
  • Docker部署kafka,Docker所在宿主机以外主机访问
  • 控制欲过强的Linux小进程
  • ​探讨元宇宙和VR虚拟现实之间的区别​
  • Docker Desktop安装
  • 《Towards Black-Box Membership Inference Attack for Diffusion Models》论文笔记
  • vscode调试nextjs前端后端程序、nextjs api接口