要点 1.面向对象程序设计(Object-oriented Programming, OOP) 2.人们所能够解决的问题的复杂性直接取决于抽象的类型和质量。 类型:指“所抽象的是什么?” 3.面向对象思想的实质是:程序可以通过添加新类型的对象使自身适用于某个特定问题。 4.OOP运行根据问题来描述问题,而不是根据运行解决方案的计算机来描述问题。但是它仍然与计算机有联系:每个对象看起来都有点像一台微型计算机----它具有状态,还有操作,用户可以要求对象执行这些操作。 5.对象:对象具有状态、行为和标识。 6.面向对象思想的基本特性: - 万物皆为对象。
- 程序是对象的集合。
- 每个对象都有自己的有其它脆响所构成的存储。
- 每个对象都拥有其类型。
- 某一特定类型的所以对象都可以接收同样的消息。
7.每个对象都有一个接口 - 所有的对象都是唯一的,但同时也是具有相同的特性和行为的对象所归属的类的一部分。
- 类描述了具有相同特性(数据元素)和行为(功能)的对象的集合,所以,一个类实际上就是一个数据类型。
- 程序员通过定义类来适应问题,而不再被迫只能使用现有的用来表示机器中的存储单元的数据类型,可以根据需求,通过添加新的数据类型来扩展编程语言。
8.任何程序都是你所设计的系统的一种仿真。 9.接口确定了对某一特定对象所能发出的请求,而决定接口的并使类型(类)。 10.每个对象都提供服务 11.被隐藏的具体实现 访问控制存在的原因: - 让客户端程序员无法触及他们不应该触及的部分。
- 允许库设计者可以改变类内部的工作方式而不用担心会影响到客户端程序员。
12.Java使用三个关键字在类的内部设定边界:public private protected 这些访问指定词(access specifier)决定了紧跟其后被定义的东西可以被谁使用。 - Public:对任何人都是可用的的元素
- Private:除类型创建者和类型的内部方法之外的任何人都不能访问的元素
- Protected:除继承的类可以访问protected成员,但是不能访问private成员。
Java的默认访问权限(没有指定以上关键字): 包访问权限 (类可以访问在同一包--库构建-中的其他类的成员,但是在包之外,这些成员如同指定了private一样)。 12.复用具体实现 新类可以由任意数量、任意类型的其它对象以任意可以实现新的类中想要的功能的方式所组成,这种概念被称为:组合(composition)(has-a 关系) ; 如果组合是动态发生的,那么它通常被称为:聚合(aggregation) 13.在创建新类时,应该首先考虑组合,因为它更加灵活简单,然后再考虑使用继承。 14.继承 基类、超类、父类<---->导出类、继承类、子类 一个基类型包含了其所有导出类型所共享的特性和行为。 使用继承时使基类和导出类产生差异的两种方式: - 直接在道出了中添加新方法。
- 改变现有基类的方法的行为:覆盖(overriding)
15.是一个(is-a) 和 像是一个(is-like-a)关系 is-a: 导出类只覆盖基类的方法,导出类和基类具有完全相同的接口,它们是完全相同的类型。---->纯粹替代、替代原则 Is-like-a: 导出类中添加了新的接口元素(接口扩展),基类无法访问新添加的方法。 16.伴随多态的可互换对象 非面向对象编程的编译器参数的函数调用采用:前期绑定 OOP采用:后期绑定(编译器确保被调用方法的存在,并对调用参数和返回值进行检查(强类型),但是并不知道将被执行的确切代码。) 向上转型 17.单根继承结构 除C++以外,所有的OOP语言都是单根继承的。 18.容器 |
相关推荐
第1 章 对象入门 第2 章 一切都是对象 第3 章 控制程序流程 第4 章 初始化和清除 第5 章 隐藏实施过程 第6 章 类再生 第7 章 多形性 第8 章 对象的容纳 第9 章 违例差错控制 第10 章 JAVA IO 系统 第11 章 运行期...
Programming in Lua Fourth edition 英文版(Lua程序设计)
Odoo 14 Development Cookbook - Fourth Edition(ebook-eglish) 代码
Learning Angular - Fourth Edition A no-nonsense guide to building web applications with Angular 15 (Aristeidis Bampakos, Pablo Deeleman) (Z-Library).pdf
java think in java (英文第四版)至今为止 被认为是java教程之中权威作品之一
Computer Organization and Design, Fourth Edition, Fourth Edition: The Hardware/Software Interface (The Morgan Kaufmann Series in Computer Architecture and Design) By David A. Patterson, John L. ...
Computer Organization and Design, Fourth Edition, Fourth Edition: The Hardware/Software Interface (The Morgan Kaufmann Series in Computer Architecture and Design) By David A. Patterson, John L. ...
Learning jQuery Fourth Edition jQuery基础教程 带源码
Real-Time Rendering, Fourth Edition 实时渲染最新版 第四版PDF,下载地址见文档....
Handbook on the Toxicology of Metals, Fourth Edition-[4]-[Gunnar F Nordberg, Bruce A Fowler, Monica Nordberg]
JQuery官网推荐的学习教程,英文原版,找了好久,共享下
这本书非常不错,既有编程,又有数据结构,加深对数据结构的认识。
Now revised to reflect the innovations of Java 5.0, Goodrich and Tamassia’s Fourth Edition of Data Structures and Algorithms in Java continues to offer accessible coverage of fundamental data ...
Part 1: Legislation and standards - EMC directive and standards ... Part 2: Testing - RF emissions & Immunity & Low frequency tests ... Part 3: Design - Interference coupling mechanisms & Layout and ...
Annotated Solution Guide for Thinking in Java Fourth Edition; 官方原版答案 For Thinking in Java 4,PDF文档,共778页,英文。
The Java Tutorial, 4th Edtion
Learning Python, Fourth Edition