标签:消息 object 组合 机器 形式 info int 表示 重要
1、机器模型(方案空间),实际解决问题的问题模型(问题空间)。
2、我们将问题空间中的元素以及它们在方案空间的表示物称为“对象”(Object)。
3、OOP(面向对象编程)允许我们根据问题来描述问题,而不是根据方案。
4、与现实世界中的“对象”或“物体”相比,编程“对象”也有他们自己的特征和行为。
1、所有的东西都是对象,可将对象想象成一种新型变量,它保存着数据,可以要求它对自身进行操作。
2、程序是一大推对象的组合,通过消息传递(比如方法调用),各个对象知道自己该做些什么。
3、每个对象都有自己的存储空间,也可以容纳其它对象(其它对象必须是private)。
4、每一个对象有一种类型。一个类的最重要特征是能将什么消息发送给它。
5、同一类所有对象都能接收相同的消息。
1、现实世界中,每一种类都有它自己的特征与行为,比如说人类,有黑人,白人等特征;人能说话,能直立行走这些行为等。
2、程序世界里,每一个对象都隶属一个特定的“类”,这个类也有自己的行为和通用特征。
3、所以,在面向对象编程中,我们要建立各种各样的类(class),可根据实际情况生成许多对象 。随后这些对象作为要解决的问题在元素中处理。
4.、如何在问题空间的元素与方案空间的元素之间建立理想的一一对应或映射关系?这就有了接口(interface)的出现。每个对象都能接收特定的请求,我们想对象发出的请求的通过它的接口(interface)来定义的,对象的类规定了它的接口形式。类与接口的等价或对应关系是面向编程设计的基础。
以灯泡为例子,有开灯、关灯、调亮、调暗等接口。而要调用的话,需要创建(new)一个对象,通过对象的句柄去调用。
1、说白了就是访问控制
同一个类 | 同一个包 |
不同包的子类 | 不同包的非子类 | |
public | 可以访问 | 可以访问 | 可以访问 | 可以访问 |
protect | 可以访问 | 可以访问 | 可以访问 | |
default | 可以访问 | 可以访问 | ||
private | 可以访问 |
2、方案的重用,许多人认为设计方案的重用是面向对象程序设计提供的最伟大的一种杠杆。我们把那些公共的方法拿出来封装成一个接口,然后提供给其它需要的对象继承重复使用。
3、继承(extends),重新使用接口。比如说父类有能跑的方法,当子类继承了父类之后,子类除了自己的方法外,还多了一个父类的方法。我们可以改善父类方法函数的行为,也可以直接继承它的行为。
4、对象的创建和存在时间。
标签:消息 object 组合 机器 形式 info int 表示 重要
原文地址:https://www.cnblogs.com/hsz-csy/p/9534835.html