【复习】软件设计师之论:面向对象思想

【复习】软件设计师之论:面向对象思想

 面向对象 = 类 + 继承 + 对象 + 消息通信

对象:是系统中用来描述客观事物的一个实体,他是构成系统的一个基本单位

对象有三要素:对象标志,属性和服务

封装:是对象的一个重要原则。

它有两层含义:

第一:对象是其全部属性和全部服务紧密结合而形成的一个不可分割的整体;

第二:对象是一个不透明的黑盒子,表示对象状态的数据和实现操作的仪码都封装在黑盒子里面。

类:对具有相同属性和服务的一个或一组的抽象类与对象描述和具体实例的关系,一个具有的对象被称作类的一个实例。

继承和泛化:继承是面向对象方法中重要的概念,用来说明特殊类(子类)与一般类(父类)的关系,通常使用泛化来说明一般类与特殊类之间的关系,他们之间是一对多关系。

多态性与重载:多态性(即多种形式)则是一般类中定义的属性或者服务被特殊类继承后,可以具有不同的数据类型或者表现出不同的行为,通常是使用重载和改写两项结束来实现。

1.重载(专用多态)描述一个函数名称有多重不同实现方式,通常可以在编译时基于类型签名来区分各个重载函数的名称

2.覆盖(包含多态)是重载的一种特殊情况,只发生存在父类和子类这一关系中。

注:通常签名相同,内容不一样。

3.多态变量(赋值多态,强制多态)声明为一种类型,但实际上却可以包含另一种类型数值的变量。

4.泛型(模板,参数多态)它提供了一种创建通用工具的方法,可以再特定的场合将其泛化

多态:

通用的:

参数多态

包含多态

特定的:

过载多态

强制多态

消息和消息通信:

1.消息就是向对象发出的服务请求,它通常包括提供服务的对象标志,消息名,输入信息和回答新。

2.消息通信则是面向对象方法学中的一个重要原则。它与对象的封装原则密不可分,为对象提供了唯一合法的动态获取的途径。

面向对象学的优点

1.与人类习惯的思维方式一致

2.稳定性好

3.可重用性好

4.较易开发大型软件产品

5.可维护性好

在面向对象技术中,类属于是一种参数多态机制,一个类属类是关于一组类的一个特性抽象,它强调的是这些类的成员特征中与具体类型无关的那些部分,而用变元类表示与具体类型有关的那些部分。

转载于:https://www.cnblogs.com/changemax/p/10015125.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/101708.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • python基础(7)内置函数divmod用法

    python基础(7)内置函数divmod用法前言我们都知道,python中//代表整数运算中的取整,%代表整数运算中的取余,那么有什么函数可以同时取到整数和余数吗?答案是有的,使用python内置函数divmoddivmod首先看一下源

  • Rpc接口测试_Python接口测试

    Rpc接口测试_Python接口测试本发明涉及RPC(RemoteProcedureCallProtocol,远程过程调用协议,通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议)接口测试领域,具体涉及一种RPC接口测试方法及系统。背景技术:接口测试(对系统组件间接口进行测试)主要用于检测外部系统与系统(包括各个子系统)之间的交互点,接口测试重点为检查数据的交换、传递和控制管理过程,以及系统间的相互逻辑依赖关系…

    2022年10月13日
  • linux开机自启动python脚本_python3执行linux命令

    linux开机自启动python脚本_python3执行linux命令linux重启服务命令重启:service服务名restart或systemctlrestart服务名service和systemctl1.service命令service命令其实是去/etc/init.d目录下,去执行相关程序#service命令启动redis脚本serviceredisstart#直接启动redis脚本/etc/init.d/redisstart#开机自启动…

  • shell训练营 Day6「建议收藏」

    shell训练营 Day6「建议收藏」shell训练营 Day6

  • Linux 设置oracle1521端口[通俗易懂]

    Linux 设置oracle1521端口[通俗易懂]centos5安装oracle实现其他机器连接,oracleserver与其他机器可以ping通,但由于linux防火墙默认是不开启1521端口的,应此需设置iptables;开始用命令设置:iptables-AINPUT-ptcp–dport1521-jACCEPTiptables-AOUTPUT-ptcp–sport1521-jACCEPT

  • 深入Java事务的原理与应用

    一、什么是JAVA事务通常的观念认为,事务仅与数据库相关。事务必须服从ISO/IEC所制定的ACID原则。ACID是原子性(atomicity)、一致性(consistency)、隔离性(iso

    2021年12月26日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号