0

0

面向对象的特征

php中文网

php中文网

发布时间:2016-06-07 16:11:16

|

1530人浏览过

|

来源于php中文网

原创

在UML中,了解到了面向对象,所以对面向对象有个初步的认识,为以后能够更加方便的理解面向对象打下一个好的基

在uml中,了解到了面向对象,所以对面向对象有个初步的认识,为以后能够更加方便的理解面向对象打下一个好的基础。

抽象、封装、继承和多态,这是面向对象技术的四大基本特征,也是面向对象程序设计思想的组成。正是这些特征,使得程序的安全性、可靠性和可重用性得到保证,并且经过发展,面向对象的思想应用范围更加广泛,不光是软件,在硬件、人工智能、分布式计算、操作系统等领域的应用也越来越重要。

抽象

抽象可以忽略事物中与当前目标无关的非本质特征、强调与当前目标有关的特征。比如地球仪,我们的目标是通过地球仪来认识地球的全貌,而不考虑地球仪上的部分与地球对应部分的比例是多少。这只是一个地球的模型,抽象的模型越简单、展露的特点越少,模型就越通用。我们通过观察地球仪,可以找到大家公认的七大洲四大洋,并不一定要知道每个大洲或大洋的具体模样,在地球仪上都有,随便一看就可以分辨出来。

抽象也可以对信息进行分类处理,将对象按照一定的标准进行划分,实现抽象模型的层次结构,更加通用和易处理。这样,抽象出来的类就为对象的重用提供了保障。

封装

把对象的状态和行为绑到一起的机制,使对象形成一个独立的整体,并且尽可能的隐藏对象的内部细节。封装的信息屏蔽作用反应了事物的相对独立性,帮助保护数据的完整性。绑定有两个含义:一时把对象的全部状态和行为结合在一起,形成一个不可分割的整体。对象的私有属性只能够由对象的行为来修改和读取;二是尽可能隐蔽对象的内部细节,与外界的联系只能通过外部接口来实现。封装的结果是使对象以外的部分不能随意更改对象的内部属性或状态,可以通过公共访问控制器来控制对象封装了的属性或状态的改变。

在面向对象的程序设计中,不能一味的限制对象的属性被外部直接读取,否则将增加很多无用的操作,要对对象的属性进行分析后再设置。

继承

.net全诚外卖叫餐(订餐)系统
.net全诚外卖叫餐(订餐)系统

全诚外卖通是全诚团队继“全诚商城”之后以叫餐(预订)为核心的又一力作,或者称之为“特色店铺系统”,系统是基于.net2.0 + SQL构架、B/s框架的多用户店铺管理系统;外卖通的开发旨在以商家和消费者为服务对象,借以二者相互依存的关系,以互动的形式成就全诚外卖通一个完善的WEB系统平台,在这个平台里,商家可以扩大销售

下载

各种事物之间不光有它们的共性,还有各个事物自己的特性,如果忽略了事物的特性,那么世界就会变得一层不变,失去了特色的精彩世界。事物的各自的特色和个性是这个层次的世界稳固的原因,这些特色也是来区别事物共性的部分,相辅相成。

与抽象对比,抽象是把事物间的特性舍弃,抽象出事物间的共性成为一个类;而继承则是提取了事物间的不同特性形成的多个类,这个类具有前一个类的全部特征,是前一个类的子集,形成了一个层次的结构。这样就可以看出,继承和抽象是两个相逆的过程,抽象是从多个对象中抽象出来了共性的类,是一个由多到少的过程;继承则是从对象类中分层为多个具有自己特性的子类,是一个由少到多的过程。


特别的,继承意味着“自动拥有”,即在特殊类中不必重新对已经存在一般类中的所定义过的属性和行为进行定义,而是特殊类自动的,隐含的拥有其一般类的属性和行为,且继承后这些属性和行为都是自己确实存在的。一般类称为基类,特殊类称为派生类。以上图为例,小学生和中学生,大学生,研究生这四个特殊类是学生类这个一般类的子类,也是从学生类中继承来的新类,它们自动的拥有了所有属于学生类的属性和方法,而同时它们又有自己的特性,不用再重新定义在学生类中已经定义过的属性和方法。学生类是基类,小学生等类是派生类。

继承在面向对象软件的开发过程中有如下目的,或者可以说是优势:1.对类的描述更加简洁;2.能够重用和扩展现有类库资源;3.是软件易于维护和修改。

多态

多态是指两个或多个属于不同类的对象,对于同一个消息或方法调用所作出的不同相应的能力。在面向对象的程序设计中,多态性是指在两个或多个属于不同类的同一函数名对应于多个具有相似功能的不同函数,可以使用相同的调用方式来调用这些具有不同功能的同名函数。这个可以这样理解,在一个图形的基类中有一个方法是画图,派生类矩形和派生类椭圆中也有画图的方法,但是通过同一个画图动作,矩形类画出来的图形是矩形,椭圆中画图画出来的是椭圆。

继承性和多态性的结合,实现了软件的个性化设计。面向对象中的抽象和继承更加重要,对面向对象的理解非常有帮助,当对面向对象陌生的时候可以以这两个为突破点,全面理解面向对象。

相关专题

更多
虚拟号码教程汇总
虚拟号码教程汇总

本专题整合了虚拟号码接收验证码相关教程,阅读下面的文章了解更多详细操作。

29

2025.12.25

错误代码dns_probe_possible
错误代码dns_probe_possible

本专题整合了电脑无法打开网页显示错误代码dns_probe_possible解决方法,阅读专题下面的文章了解更多处理方案。

20

2025.12.25

网页undefined啥意思
网页undefined啥意思

本专题整合了undefined相关内容,阅读下面的文章了解更多详细内容。后续继续更新。

37

2025.12.25

word转换成ppt教程大全
word转换成ppt教程大全

本专题整合了word转换成ppt教程,阅读专题下面的文章了解更多详细操作。

6

2025.12.25

msvcp140.dll丢失相关教程
msvcp140.dll丢失相关教程

本专题整合了msvcp140.dll丢失相关解决方法,阅读专题下面的文章了解更多详细操作。

2

2025.12.25

笔记本电脑卡反应很慢处理方法汇总
笔记本电脑卡反应很慢处理方法汇总

本专题整合了笔记本电脑卡反应慢解决方法,阅读专题下面的文章了解更多详细内容。

6

2025.12.25

微信调黑色模式教程
微信调黑色模式教程

本专题整合了微信调黑色模式教程,阅读下面的文章了解更多详细内容。

5

2025.12.25

ps入门教程
ps入门教程

本专题整合了ps相关教程,阅读下面的文章了解更多详细内容。

4

2025.12.25

苹果官网入口直接访问
苹果官网入口直接访问

苹果官网直接访问入口是https://www.apple.com/cn/,该页面具备0.8秒首屏渲染、HTTP/3与Brotli加速、WebP+AVIF双格式图片、免登录浏览全参数等特性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

218

2025.12.24

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
CSS3 教程
CSS3 教程

共18课时 | 4万人学习

Vue 教程
Vue 教程

共42课时 | 5.5万人学习

PostgreSQL 教程
PostgreSQL 教程

共48课时 | 6万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号