OO面向对象再认识

Object

Objects in programming languages often embody both attributes and behaviors.

Attributes在不同场合又称作

Properties
Fields
Data
Instance variables
State

Behaviors在不同场合又称作

Methods
Functions
Procedures
Operations
Actions
Member functions

了解一个东西的属性和行为,就表示对该东西有了认识和概念(Concepts)。尽管有些东西并不存在,但只要对其有概念,就是对象,如古代神话中的龙、凤凰、月中白兔、嫦娥等都是我们熟悉的对象。但对于没有听过嫦娥奔月故事的外国人来说,嫦娥并不是对象。

在“面向对象编程”(Object-Oriented Programming,简称OOP)观念中,事件所涉及的东西是对象,对象的内部状态变化是事件。

传统上,数据与函数分而治之。“函数”代表计算机的动作,其动作的目的是“处理”数据。。数据是被动的,函数是主动的。若软件想满足人们的生活习惯,符合自然界的规则,应修正传统的观点,将数据和函数化零为整,合
为一体成为如今所说的“对象”。

In many object-oriented programming languages, each object belongs to a specific class, and each class defines a data type. So, in a sense, you could say that each object is an instance of a particular data type.

消息的作用:刺激对象,令其改变内部状态。
消息的目的:要求对象提供服务。例如,在火车站将钱币投入售票机时,对售票机个体而言,用户的投币
或按键都可以认为是消息的到来,消息会改变售票机的内部状态—金额逐渐增加。投足钱币时,售票机提供服务—送出火车票。

“事件驱动”或“消息驱动”(Message Driven)。所以在OOP 观念中,函数的任务:运行对象对消息的反应过程,即表达对象的行为。函数处于被动位置,只有收到消息,受外界刺激时,对象才会呼叫函数对消息做出反应。
目前大部分软件是事件驱动的,而写这类软件时,就需要应用OOP 的观念和方法。

铁打的营盘流水的兵

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值