重新认识面向对象(一)

简介: 重新认识面向对象(一)

1.面向对象的三大特征是什么?面向对象的基础是什么?

封装继承多态。抽象


2.为什么说面向对象的基础是抽象?对抽象做详细解释。

一个提炼存在于事物之间共同拥有的元素的过程,就叫抽象。而这些事务之间共同拥有的元素往往是这一事物区别于其他事物关键的东西,这些元素就构成了事物的本质。


抽象是从众多的事物中抽取出共同的、本质性的特征,而舍弃其非本质的特征的过程。具体到一般化的过程


类是对对象的抽象,抽象类是对类的抽象,接口是对行为的抽象。接口、类、对象都是在不同层次,不同角度进行抽象的结果。共性—类,特性——接口


有很多帮助我们进行抽象的工具,比如说ER图、UML九种图、架构图、设计模式、流程图、NS图等。


3.我们要注重多少人来干事,而不是干多少事。

我们要注重谁来干事,而不是怎么干事。 这与面向对象的抽象有什么关系?

1:我们抽象出来了类,找出类与类之间的联系。它们完成事情。(理解词义:人)

2:具体完成事情,我们需要实例化对象,通过事件交互、消息驱动的方式进行事件的处理。(理解词义:谁)


3:以对象为基础,以事件驱动对象对事件进行处理。(理解词义干事)


以下以打水为例


首先我们应该抽象出类,打水人类,受水人类,水类,工具类,地点类等,当然我们还可以进一步抽象,参与人类,水类,工具类,地点类。

完成打水这件事情,我们需要实例化出对象,以事件驱动对象对事件进行处理。


抽象:抽象出谁的活。


分治:谁的活谁负责。


本文讲了什么是抽象,如何进行抽象以及深入理解面向对象内在含义,打破了之前对面向对象的固有认知,收获匪浅。


之前的开发都是空有其表,无其魂。重要要转变思想,转变思想。

相关文章
|
5月前
|
PHP
PHP编程中的面向对象和面向过程
【8月更文挑战第28天】在PHP编程中,我们可以选择面向对象或面向过程的编程方式。面向对象的编程方式更符合人类习惯,易于理解,提高程序的重用性,减少代码出错率;而面向过程的编程方式则强调的是功能行为,以具体的功能实现为主。
|
8月前
|
测试技术 项目管理 Python
软件测试|探索多态在程序设计中的奇妙应用与巧妙技巧!
软件测试|探索多态在程序设计中的奇妙应用与巧妙技巧!
|
8月前
|
Java 物联网 测试技术
Java面向对象程序设计3面向对象基础
Java面向对象程序设计3面向对象基础
353 0
|
7月前
|
Java
Java面向对象编程新篇章:多态,你准备好了吗?
【6月更文挑战第17天】Java的多态性是面向对象编程的核心,它允许通过统一的接口处理不同类型的对象。例如,在一个虚拟宠物游戏中,抽象类`Pet`定义了`speak()`方法,猫、狗和鹦鹉等子类各自重写此方法以实现独特叫声。在`main`方法中,使用`Pet`类型的引用创建子类对象并调用`speak()`,多态机制确保调用实际对象的方法,实现代码的灵活性和可扩展性。通过多态,我们能以更低的耦合度和更高的复用性编写更优雅的代码。
48 3
|
4月前
|
数据库连接 PHP 开发者
PHP编程中面向对象与面向过程的比较
【9月更文挑战第19天】本文旨在探讨PHP编程语言中的两种主要编程范式:面向对象编程(OOP)和面向过程编程。我们将通过对比这两种方法的特点、使用场景及其优缺点,帮助读者更好地理解在PHP开发中如何选择合适的编程模式。文章还将提供一些实际代码示例,以便更直观地展示两种编程方式的差异。
|
5月前
|
存储 数据处理
|
5月前
|
PHP 开发者
PHP编程中的面向对象与面向过程
【8月更文挑战第23天】在PHP编程语言中,开发者可以选择使用面向过程或面向对象的方法来编写代码。本文将探讨这两种编程范式的核心概念、优势和局限性,以及如何在实际应用中根据项目需求做出选择。我们将通过比较分析,理解为什么在某些情况下面向对象的编程方式更为合适,而在其他情况下,面向过程的简洁性可能更受青睐。最终,我们将提供一些实用的建议,帮助PHP开发者在面对不同的编程挑战时,能够更加灵活地运用这两种方法。
|
5月前
|
PHP 数据库 开发者
PHP编程中的面向对象和面向过程:理解与选择
在PHP的世界里,面向对象和面向过程像是两个老邻居,各有所长,各有所爱。本文将带你走进这两种编程范式的小院,看看它们的日常,聊聊它们的趣事,更重要的是,帮你搞清楚在何时何地该敲响哪位邻居的门。
|
JavaScript 前端开发 机器人
梦回战国,领略两千多年前公孙龙如何将面向对象运用得炉火纯青
2200 年前的战国时期,赵国平原君的食客公孙龙有一天骑着白马进城时,被守城的官兵以马不能进城而将其拦下.公孙龙当众即兴演讲,口述"白马非马"一论.守城的官兵被说的一愣一愣的,无法反驳。于是公孙龙就骑着他'不是马的白马'大摇大摆进城去了,这其实就是历史上最为经典的一次面向对象思维的阐述
28661 11