软考-面向对象技术

news2025/1/17 23:12:36

面向对象的基本概念

  1. 对象:属性(数据)+ 方法(操作)+ 对象ID
  2. 类(实体类、控制类/边界类)
  3. 继承与泛化:复用机制
  4. 封装:隐藏对象的属性和实现细节,仅对外公开接口
  5. 多态:不同对象收到同样的消息产生不同的结果,动态绑定
  6. 接口:一种特殊的类,他只有方法定义没有实现
  7. 重载:一个类可以有多个同名而参数类型不同的方法
  8. 模板类
  9. 消息和消息通信:消息是异步通信的

面向对象设计7大原则

  1. 单一职责原则:单一的类
  2. 开发-封闭原则:对扩展开放,对修改封闭
  3. 李氏替换原则:子类可以替换掉父类
  4. 依赖倒置原则:对接口编程,不要针对实现编程
  5. 接口隔离原则:多个专门的接口比单一的接口好
  6. 组合重用原则:尽量使用组合
  7. 迪米特原则:一个对象应当对其他对象更少了解

UML

image.png
image.png
组件图:很多的动态或者静态链接库

类图

image.png

设计模式的分类

image.png

创建型

image.png

结构型模型

image.png

行为型模式

image.pngimage.png

设计模式关键字

  1. 工厂模式:Factory
  2. 抽象工厂:AbstractFactory
  3. 原型模式:Prototype
  4. 单例模式:Singleton
  5. 生成器模式:Builder
  6. 适配器模式:Adapter
  7. 桥接模式:Bridge/Impl
  8. 组合模式:Component
  9. 装饰模式:Decorator
  10. 外观模式:Facade,统一对外接口
  11. 享元模式:Flyweight
  12. 代理模式:Proxy
  13. 中介者:Mediator
  14. 观察者:Observer

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1104263.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【JavaEE】Callable 接口

Callable 是一个 interface . 相当于把线程封装了一个 “返回值”. 方便程序猿借助多线程的方式计算结果. 实现Callable也是创建线程的一种方法!!!! Callable的用法非常接近于Runnable,Runnable描述了一个任务&#…

C语言中static关键字用法

C语言中static关键字用法 2021年7月28日席锦 static关键字在c语言中比较常用,使用恰当能够大大提高程序的模块化特性,有利于扩展和维护。但是对于c语言初学者,static由于使用灵活,并不容易掌握。 变量 1.局部变量 普通局部变量是再…

智能手表上的音频(二):驱动

上一篇讲了智能手表上音频系统的架构和应用场景。从本篇开始讲具体的,首先讲音频相关的驱动,主要包括IPC(inter-processor communication,核间通信, 即AP/CP/ADSP之间的通信)的driver 和audio的driver。首先…

讯飞星火3.0版发布前瞻,生产力将大幅提升

AI头部企业科大讯飞宣布,即将在10月24日发布讯飞星火认知大模型3.0版。新版本将极大提升生产力,并开启大规模AI应用产业落地。 一、讯飞星火大模型3.0版即将升级发布 科大讯飞是AI人工智能技术、智能语音识别技术领域的全球领先企业,也是大…

垃圾回收器、垃圾回收算法、空间分配担保、JVM调优、GC回收对象的过程

文章目录 🍊 垃圾回收器、垃圾回收算法、空间分配担保🎉 Serial🎉 ParNew🎉 Parallel scavenge🎉 复制算法🎉 分代收集算法🎉 进入老年代的几种情况📝 空间分配担保 🎉 S…

PCI认证:为什么它对你的业务至关重要,以及如何成功获得认证?

PCI认证是保障你的业务安全和合规性的重要工具。它是一个由支付卡行业安全标准委员会(PCI SSC)提供的全球性标准,旨在保护持卡人信息和资金的安全。如果你的企业处理、存储或传输持卡人信息,那么PCI认证就对你的业务至关重要。 为什么PCI认证对你的业务至…

拼接屏新时代:了解OLED透明拼接屏的尺寸与定制选择

在当今科技迅速发展的时代,OLED透明拼接屏作为一项引人注目的创新技术,正在改变我们对于显示屏的认知。 它以其独特的透明性和高清晰度,为用户提供了前所未有的视觉体验。 一、OLED透明拼接屏原理 OLED(Organic Light Emitting …

基于 Servlet 的博客系统

基于 Servlet 的博客系统 一、准备工作1、创建项目2、创建包3、导入前端静态页面 二、数据库设计1、blog(博客表)2、user(用户表)3、建库建表的 SQL 语句 三、封装数据库操作1、为什么要封装数据库?2、封装数据库的连接…

最高频的五个面试题

目录 1.JavaSE阶段:谈谈啥是多态 2.数据结构阶段:谈谈哈希表 3.数据库阶段:谈谈事务 4.操作系统阶段:谈谈进程和线程的区别联系 5.网络阶段:TCP三次握手和四次挥手 1.JavaSE阶段:谈谈啥是多态 多态&a…

解决方案-LBS用户位置Redis-GEO附近人/店铺

附近人 windows安装附近人列表功能mysqlredis GEO CNNVD-201511-230 未授权访问python 多线程 redis大端模式与小端模式IP地址的不同表现形式1.字符串表现形式2. 整数表现形式3.大小端模式下的IP地址 0x01 进入python正题Python的socket库1.socket.socket(family,type)2.socket…

【前端学习】—多种方式实现数组拍平(十一)

【前端学习】—多种方式实现数组拍平(十一) 一、数组拍平 数组拍平也叫数组扁平化、数组拉平、数组降维,指的是把多维数组转化为一维数组。 二、使用场景 复杂场景下的数据处理(echarts做大屏数据展示) 三、如何实…

华硕U盘盘重装Win10系统步骤图解

重装操作系统是在电脑系统遇到问题或者需要清除所有数据时的一种常见解决方法。但是,很多使用华硕电脑的新手用户,不清楚具体的操作步骤,接下来小编就给介绍关于利用U盘给华硕电脑重装Win10系统的方法,帮助用户们更快地完成系统的…

Shader Graph25-UV移动旋转缩放(自定义函数)

我们将UV操作放入函数内,该函数的内容来自我之前的文章 Shader Graph24-摇晃树叶-CSDN博客 一、UE在Material中右键,新建Material Function。 增加输入 二、新建Material,命名为DemoUVRotationUseFunction Offset为偏移值,Rotat…

VMware虚拟机安装Linux系统的介绍

许多新手连 Windows 的安装都不太熟悉,更别提 Linux 的安装了;即使安装成功了,也有可能破坏现有的 Windows 系统,比如导致硬盘数据丢失、Windows 无法开机等。所以一直以来,安装 Linux 系统都是初学者的噩梦。 然而&a…

填充颜色游戏

无语死了这题。 题目描述 小明最近迷上下面一款游戏。游戏开始时, 系统将随机生成一个 N N 的 正方形棋盘, 棋盘的每个格子都由六种颜色中的一种绘制。在每个步骤中, 玩家选择一种颜色, 并将与左上角连接的所有网格更改为该特…

MSQL系列(四) Mysql实战-索引 Explain实战

Mysql实战-索引 Explain实战 前面我们讲解了索引的存储结构,我们知道了BTree的索引结构,也了解了索引最左侧匹配原则,到底最左侧匹配原则在我们的项目中有什么用?或者说有什么影响?今天我们来实战操作一下&#xff0c…

Yakit工具篇:子域名收集的配置和使用

简介(来自官方文档) 子域名收集是指通过各种技术手段,收集某个主域名下所有的子域名列表。子域名是指在主域名前面添加一级或多级名称的域名。例如,对于主域名example.com,其子域名可以是www.example.com、mail.example.com、blog.example.c…

MIT6.5830 Lab0-Go tutorial实验记录(二)

MIT6.5830 Lab0-Go tutorial实验记录(二) – WhiteNights Site 标签:Golang, 数据库 在将数据库的数据转换为图表前,我们需要先测试是否能正常访问数据库文件。 写者注 为什么要怎么做?因为这块 非常容易出问题。在h…

计算机基础知识33

进程基础(操作系统中的概念) 进程它是操作系统总最重要的概念,线程也是 进程和线程都是有操作系统来调度使用的,我们程序员是不能控制的 # 进程和程序是两码事、完全不一样 程序:其实一个死的东西、一堆代码就是程序,它也没有生命…

【5】c++11新特性(稳定性和兼容性)—>override关键字

override关键字很简单,就是起到一个检查的作用,父类中有一个虚函数,子类要去重写这个虚函数,那么在子类重写时,函数后面加上override,就会检查子类中重写的这个函数和父类中这个虚函数名是否一样&#xff0…