APP下载

面向对象程序设计中多态性探讨

2020-11-24周佳明陈俊杰河北农业大学

数码世界 2020年1期
关键词:面向对象多态性程序设计

周佳明 陈俊杰 河北农业大学

引言

程序设计语言经历了由无类型到带类型,由简单的基本类型到复杂的结构类型、抽象数据类型的发展。面向对象程序设计引入了多态类型,多态类型是指一个数据对象可以有多个类型,具体类型由其所在的上下文确定。多态性的引入对于改善程序的性能、保证程序的正确性、提高程序的可读性大有益处,为软件功能的扩展提供了极大的方便。

1 面向对象程序设计

1.1 面向对象

面向对象程序设计的客体就是现实世界中客观存在的实体以及人们对这个世界的认知和改变的客体,它们所一一对应的是现实世界中存在的那些现实客体的抽象化表现,并与其有着密不可分的直接性关系,并相互对应而面向对象程序的设计开展过程中,对象是其设计中最为关键和核心的一种观念,并需要调节好每个对象之间的相互协作,这就是面向对象程序设计。

1.2 面向对象程序设计

在面向对象程序设计开展之前,有一种结构化的程序设计是产生在其设计之前的,那就是面向过程的程序设计。这种程序设计产生于面向对象程序设计之前,具有从上到下,慢慢细化的结构特点,并且将功能作为其主要设计核心,将函数作为其程序设计的主要基础部分,而数据在其设计过程中作用意义并不很大,往往只处于从属地位。这样的程序设计概念的实施与操作,更容易帮助人们去加深理解和掌握,但是也具有着不能处理复杂性问题及单一性等问题。

因此为了能够满足更多人的需求和更多领域的需要,一种操作更加简单,涉及范围更加广泛的程序设计思想就出现了——面向对象程序设计它的出现与实施帮助软件开发更加的便捷与高效,其设计主要的思想就是有效的将客户的主观思想带入到软件开发与程序设计中去,在设计与落实的过程中始终坚持以“对象”为设计的核心理论基础,并且在其设计理念中坚持的是一种由下到上的观念,并将“数据”为其设计开展的主要核心和中心,并紧紧围绕其发展,而类就变成了其程序设计最最基础的设计单位,面向对象程序设计这种独特的设计理念和特性,对于设计者而言能使其在设计过程中从内部更加深入细致的加深了解时也能在程序设计完成之后提高程序使用的灵活性和高效性,比较适合开发大型复杂软件,是目前较为重要的程序设计方法之一。

2 面向对象程序设计中的多态性

2.1 多态性的概念

多态性,就如同其名字字面意思,就是一种客观载体有多重形态的意思,在面向对象程序设计过程中其多态主要表现在一种程序设计方法中,可能有着相同的名称,但是它们在设计过程中的设计参数,设计过程等方式都各不相同并具有着多种联通组合的方式,而在后来的面向对象程序设计中,多态性的表现,最主要的是表现在一种程序设计方式在相同和不同的设计对象中所反馈和呈现的不同的多样性的结果其优势就在于在这种特性下,程序设计中所内部允许的对象可根据不同想参数形式及反馈信息作出不同的操作响应,这样就大大提升了程序的运作效率,并提高了其处理复杂性问题的能力。

2.2 多态性的分类

(1)静态多态性。在面对对象程序设计过程中,函数的参数模式是由多个方面所构成的,参数类型、个数、以及顺序,构成了该函数的参数模式,并且伴随着一定量的同名方法函数,它们的参数模式也有着很大的不同与差异性而这种现象的存在就被称为“方法重载”,其主要表现在在一个使用了方法重载的应用程序中,编译系统在编译阶段会根据被调用方法的实际参数的情况找到与之相一致的重载方法执行,即根据参数模式的匹配来确定执行哪一个具体的重载方法,进而完成相应的功能这种多态性即被称为静态多态性,即方法重载机制是实现静态多态性的一种途径。

(2)动态多态性。其主要特征表现在面对对象程序设计过程中出现函数及方法的首部相同,但是主体不同时的情况这种现象和特征有时也被称之为方法的重写或者覆盖,当在程序设计过程中出现了这样的程序和过程时,在一个出现了方法重写的程序中,如果子类对象调用了重写的方法,这时在编译时就能够确定执行哪个重写方法了,即为调用该对象所属子类中的定义的重写方法;如果父类变量引用(指向)子类对象,这时具体执行哪个重写方法需要到程序运行时才能够确定,它更能体现同一个消息,有不同的执行过程和不同的执行结果。后者被称为动态多态性,这种多态性是通过方法重写的机制实现的。

3 总结

综上所述,多态性作为面向对象程序设计过程中最为重要的特点与观念之一,在面向对象程序设计过程中对其发展起着至关重要的作用,并因为其多态性的特征,让面向对象程序设计的理念和思路更加成熟,并且更加高效,因此在今后的相关研究中,将继续对此展开更加深入的剖析和了解,加深对其认知,从而为后来的相关研究提供更多的建设性意见。

猜你喜欢

面向对象多态性程序设计
GEE平台下利用物候特征进行面向对象的水稻种植分布提取
单核苷酸多态性与中医证候相关性研究进展
护骨素基因启动子区T950C多态性与2型糖尿病合并骨质疏松症的关系
MTHFR C677T基因多态性与颈动脉狭窄及其侧支循环形成的关系
医学专业“Python程序设计”课程教学改革总结与思考
妊娠期女性MTHFR 677C>T基因多态性分布特征及其与妊娠高血压疾病的相关性
基于Visual Studio Code的C语言程序设计实践教学探索
从细节入手,谈PLC程序设计技巧
面向对象方法在水蓄冷PLC编程中应用分析
高职高专院校C语言程序设计教学改革探索