首页 > 代码库 > 《Thinking in Java 4th Edition》读书笔记之1.1 抽象过程
《Thinking in Java 4th Edition》读书笔记之1.1 抽象过程
Q:什么是面向对象?与面向过程的区别是什么?
A:面向对象:即面向问题空间,基于问题进行抽象;
面向过程:即面向解空间,基于计算机结构进行抽象;
OOP的五个基本特性:
1)万物皆对象。
【解释】
可以抽取待求解问题的任何概念化构件,将其表示为程序中的对象。
2)程序是对象的集合,他们通过发送消息来告知彼此所要做的。
【解释】
即对某个特定对象的方法的请求。
3)每个对象都有自己的由其他对象构成的存储。
【解释】
可以通过创建包含现有对象的包的方式来创建新类型的对象,因此可以在程序中构建复杂的体系,同事将其复杂性隐藏在对象的简单性背后。
4)每个对象都拥有其类型。
【解释】
每个对象都是某个类(class)的实例(instance)。
5)某一特定类型的所偶对象都可以接受同样的消息。
【解释】
“圆形”类型的对象同时也是“几何形”类型的对象,所以“圆形”的对象必能接受发给“几何形”对象的消息。这意味着“几何形”交互并自动处理所有与几何形相关的事物的代码。这种可替代性(substitutablility)是OOP中最强有力的概念之一(继承)。
《Thinking in Java 4th Edition》读书笔记之1.1 抽象过程
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。