【软考】14.1 面向对象基本概念/分析设计测试

news2024/11/20 2:37:32

《面向对象开发》

  1. 对象
  • 现实生活中实际存在的一个实体;构成系统的一个基本单位
  • 由对象名、属性和方法组成
  • 实体的形式化描述;对象是类的实例,类是对象的模板
  • 可分为:
  • 实体类:现实世界中真实的实体
  • 接口类(边界类):为用户提供一种与系统合作交互的方式
  • 控制类:控制活动流,充当协调者

在这里插入图片描述

  1. 封装:信息隐藏技术
  2. 继承:类之间的层次关系(父类与子类);可分为单继承,多继承
  3. 多态:不同对象收到同一个信息时产生不同的结果;由继承机制支持
  • 参数多态:不同类型参数多种结构类型
  • 包含多态:父子类型关系
  • 过载多态:类似于重载,应该名字不同含义
  • 强制多态:强制类型转换

在这里插入图片描述

  1. 绑定
  • 静态绑定:编译时进行
  • 动态绑定:运行时进行

在这里插入图片描述

在这里插入图片描述

  • 面向对象的分析
  • 确定问题域,理解问题
  • 认定对象
  • 组织对象
  • 描述对象间的相互作用
  • 确定对象的操作
  • 定义对象的内部信息
  • 面向对象需求建模
  • 两种模型:用例模型(用例图),分析模型 / 领域概念模型(类图 / 对象图等)
  • 结构化数据建模三个模型:数据模型(E-R图)、行为模型(状态转换图)、功能模型(数据流图)
    在这里插入图片描述
  • 面向对象的设计
  • 设计分析模型和实现相应源代码
  • 遵循抽象、信息隐蔽、功能独立、模块化等设计准则
    在这里插入图片描述
    在这里插入图片描述
  • 面向对象的设计原则

在这里插入图片描述
在这里插入图片描述

  • 面向对象的测试

在这里插入图片描述

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

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

相关文章

msvcp120.dll丢失的解决方法总结,快速解决dll丢失问题

在计算机系统中,DLL(动态链接库)是一个重要的组成部分,它负责程序之间的相互调用和数据共享。然而,有时候我们可能会遇到“MSVCP120.dll丢失”的问题,这可能会导致一些应用程序无法正常运行。本文将详细介绍…

Netty P1 NIO 基础,网络编程

Netty P1 NIO 基础,网络编程 教程地址:https://www.bilibili.com/video/BV1py4y1E7oA https://nyimac.gitee.io/2021/04/25/Netty%E5%9F%BA%E7%A1%80/ 1. 三大组件 1.1 Channel & Buffer Channel 类似 Stream,它是读写数据的双向通道…

RSA加密与解密原理

目录 一、什么是RSA加密 二、RSA加密原理 三、RSA加解密过程与算法代码 一、什么是RSA加密 RSA加密是一种非对称加密算法。 对称加密: 对称加密是一种加密方式,加密和解密使用同一个密钥,被加密的信息在传输前用预先协商好的密钥进行加密…

leetcode-64.最小路径和

1. 题目 2. 解答 data[i][j]表示位置i,j的值 dp[i][j]表示i,j位置的路径最小值; 0. 如果i 0, j 0, dp[i][j] data[i][j]; 如果i 0,j ! 0,dp[i][j] data[i][j] dp[i][j -1];如果i! 0, j 0,dp[i][j] data[i][j] dp[i -1]…

yolov8输出结果后处理

一、模型分析和处理: yolov8模型输出格式为84*8400,结合网络资料和上图的网络模型分析,可以得出如下结论: 84 边界框预测4 数据集类别80 搜索得知yolov8不另外对置信度预测,而是采用类别里面最大的概率作为置信度sc…

Delphi 打包文件到APK安装包中

打包文件到APK安装包中 目的:将配置文件或SQLITE打包进APK中 1.首先,打开菜单 Project - Deployment 2.点击添加按钮,选择要添加的文件(文件最好放在工程目录中,这样,即使该工程在其他电脑上打开&#xff0…

MAYA教程之建模基础命令介绍

基础命令 视图相关操作 旋转视图 : ALT 鼠标左键平移视图 : ALT 鼠标中键缩放视图 : 滚动鼠标滚轮 或者 ALT 鼠标右键切换视图 : 空格键回到模型 : F 视图状态 选择状态 : Q移动状态 : W旋转状态 : E缩放状态 : R 视图显示 正常显示 : 1正常圆滑同时显示 : 2圆滑显示 …

1.算法-Python遗传算法实例

题记 以下是一个python遗传算法实例,包括全过程和解析。 编辑main.py文件 main.py文件如下: #导入生成伪随机数的模块 import random# 随机生成初始种群 # 1.初始化种群,在搜索空间内随机生成一组个体,称为种群 # 定义函数&#…

【C++】笔试训练(五)

目录 一、选择题二、编程题1、统计回文2、连续最大和 一、选择题 1、在上下文和头文件均正常情况下,以下程序的输出结果是() int x 1; do {printf("%2d\n", x); } while (x--);A 1 B 无任何输出 C 2 D 陷入死循环 答案&#xf…

2.Vue-从零开始搭建一个vue项目

题记 从零开始搭建一个vue项目,以下是操作的全过程。 安装Vue CLI脚手架 打开终端,运行以下命令全局安装Vue CLI脚手架: npm install -g vue/cli 查看 Vue CLI脚手架版本: vue -V 注意:查看vue版本的命令不是vue -V&a…

【计算机毕设选题推荐】超市管理系统SpringBoot+SSM+Vue

前言:我是IT源码社,从事计算机开发行业数年,专注Java领域,专业提供程序设计开发、源码分享、技术指导讲解、定制和毕业设计服务 项目名 基于SpringBoot的超市管理系统 技术栈 SpringBootVueMySQLMaven 文章目录 一、超市管理系统…

RPC框架之OpenFeign快速上手

RPC框架之OpenFeign快速上手 1. 快速上手💖1.1 第一步 引入相关依赖🦖1.2 第二步 启用OpenFeign功能🦕1.3 第三步 编写FeignClient🪼1.4 第四步 使用FeignClient 实现远程调用✨1.5 验证一下🍕1.6 原理2. OpenFeign整合…

Puppeteer记录操作过程及优秀的开源插件(五)

Puppeteer记录操作过程及优秀的开源插件(五) Puppeteer记录操作过程及优秀的开源插件(五)一、简介二、自动生成测试代码三、优秀的开源插件四、参考案例 一、简介 本节我们将介绍通过浏览器工具记录用户的实际操作,并…

SpringBoot面试题4:Spring Boot 支持哪些日志框架?推荐和默认的日志框架是哪个?

该文章专注于面试,面试只要回答关键点即可,不需要对框架有非常深入的回答,如果你想应付面试,是足够了,抓住关键点 面试官:Spring Boot 支持哪些日志框架?推荐和默认的日志框架是哪个? Spring Boot支持多种日志框架,包括以下几种: Logback:Logback 是一个快速、灵活…

架构真题2017(五十三)

在磁盘上存储数据的排列方式会影响 I/O服务的总时间。假设每磁道划分成10个物理块,每块存放1个逻辑记录。逻辑记录R1,R2, ..., RI0存放在同一个磁道上, 记录的安排顺序如下表所示 ; 假定磁盘的旋转速度为30ms/周&…

SAP MM学习笔记36 - 释放支付保留的发票

SAP中,请求书照合之后,发现不一致,就会支付保留。 支付保留,可以参考如下文章。 SAP MM学习笔记34 - 请求书照合中的支付保留(发票冻结)_东京老树根的博客-CSDN博客 当然发现不一致之后,如果不…

进阶JAVA篇- ZoneId 类与 ZoneDateTime 类、Instant类的常用API(七)

目录 API 1.0 ZoneId 类的说明 1.1 如何创建 ZoneId 类的对象呢? 1.2 ZoneId 类中的 getAvailableZoneIds() 静态方法 2.0 ZoneDateTime 类的说明 2.1 如何创建 ZoneDateTime 类的对象呢? 3.0 Instant 类的说明 3.1 如何创建 Instant 类的对象呢…

【初始C语言8】详细讲解初阶结构体的知识

前言 💓作者简介: 加油,旭杏,目前大二,正在学习C,数据结构等👀 💓作者主页:加油,旭杏的主页👀 ⏩本文收录在:再识C进阶的专栏&#x1…

模型UV纹理设置工具

1、什么是模型UV纹理? 模型的UV纹理是将二维纹理图映射到三维模型表面的过程。UV纹理可以为模型赋予颜色、纹理、细节和其他效果,使其看起来更加逼真。 2、UV纹理的原理 下面是模型UV纹理的详细原理介绍: UV坐标系统:UV坐标系统…

2.算法-Python模拟退火算法实例

题记 下面是python编写的模拟退火算法实例,包括全过程和解析。 编写main.py文件 main.py文件如下: import math import random# 初始解:算法从问题的解空间中随机选择一个初始解作为当前解。 # 目标函数:算法需要优化的目标函数…