1、 面向对象 程序设计:Object-oriented Programming,OOP。 2、所有编程语言都提供 抽象 机制,如汇编语言是对底层机器的轻微抽象,FORTRAN\BASIC\C等所谓“命令式”语言,都是对汇编语言的抽
1、面向对象程序设计:Object-oriented Programming,OOP。
2、所有编程语言都提供抽象机制,如汇编语言是对底层机器的轻微抽象,FORTRAN\BASIC\C等所谓“命令式”语言,都是对汇编语言的抽象。
3、程序员必须建立起在机器模型(位于解空间,建模,如计算机)和实际待解决问题的模型(位于问题空间,如一项业务)之间的关联。
4、我们将问题空间中的元素及其在解空间中的表示称为对象,OOP允许根据问题来描述问题,当你在阅读描述解决问题方案的代码的同时,也是在阅读问题的表述。
5、每个对象看起来都有点像一台微型计算机,具有状态和操作,用户可以要求对对象执行这些操作。
6、OOP的特性:
(1)万物皆为对象。
(2)程序是对象的集合,他们通过发送消息来告知彼此所要做的。
(3)可以通过创建包含现有对象的包的方式来创建新类型的对象(封装)。
(4)每个对象都是某个类(class,类型)的一个实例(instance),每个类最重要的区别于其他类的特性就是可以发送什么样的消息给它。
(5)某一特定类型的所有对象都可以接收同样的消息(继承和多态)。
7、对象具有状态(数据)、行为(方法)和标识(内存地址)。
8、每个对象都有一个接口,接口确定了对某一特定对象所能发出的请求,类的定义可以用UML形式表示。
9、每个对象都提供服务,服务应具有高内聚的特性。
10、Java访问权限控制:private < (default:同一包下) < protected(继承类) < public