对象导论阅读理解:
1、解决问题的复杂性直接取决于抽象的类型和质量(抽象类型及抽象的是什么?)。
汇编语言是对底层机器的轻微抽象,而C、Basic等指令式语言都是对汇编语言的抽象,它们所做的主要抽象仍要求在解决问题时
要基于计算机的结构,而不是基于要解决的问题的结构来考虑,Java语言与C、Basic等相反,其面向问题空间的抽象而非计算
机底层实现来考虑问题结构。
2、解空间及问题空间
解空间:对应于机器模型,问题建模的地方;
问题空间:实际解决问题的模型,问题存在的地方,如一项业务;
3、对象描述:对象是对现实世界的抽象,如:一个人、一辆汽车,面向对象编程即面向问题空间的建模,与之相反的面向过程式编程
针对具体问题;对象具有状态(属性)、行为(方法)、标志(内存中的地址);
4、类描述了具有相同特性(数据元素)、行为(功能)对象的集合;
5、接口确定了对某一特定对象所能发出的请求;
6、每个对象都提供服务,将对象看做服务有助于提高对象的内聚性(每个对象都试图完成一项任务,而不试图做更多的事情);
7、后期绑定:当对象发送消息时,被调用的代码知道运行时才能确认;后期绑定给面向对象带来的一大益处即多态(与之相反的是前期
绑定,即弱类型的语言)。
时间: 2024-10-13 22:23:11