Alan Kay曾经总结了Smalltalk的五项特征,这些特征是Java所依赖的基础之一,当然这些特征也代表了的面向对象的编程的方法。
--- <<Think in java>>
面向对象的编程的特征:
1:万物皆对象。即一切事物都可以当成变量,都有属性(特性)和方法(行为);
2: 程序是一组相互之间传递的消息,告诉对方该干些什么的对象。消息是调用专属某个对象的方法的请求。
3:每个对象都利用别的对象来组建它自己的记忆。换句话来说,你将已有的对象打包,来创建一个新的对象,这样,可以将对象的复杂性隐藏在对象的简单之下。
4:对象都有类型。任何对象都是某个类的实例(instance of a class),当然这里区别与类型。
5:所有属于同一类型的对象都能接收相同的消息。
面向对象的编程(Object-oriented programming 缩写是OOP)。
对象最简介的定义:对象有状态,行为和标识。这就是说:对象可以有内部数据(状态),有方法(因而产生了行为),以及每个对象在内存里有有唯一的地址。
类描述的是一组具有相同特征(数据元素)和行为(功能)的对象,所以类实际上也是一种数据类型。类区别与数据类型在于:类是程序员为解决特定问题而定做的,而数据类型是为了标识机器的存储单元而设计的。
这里需要了解并且记忆的是:
1:对象都有接口。
2:对象会提供服务
3:隐藏实现,把复杂的程序代码过程隐藏起来
4:复用实现,好处在于不用浪费太多的时间在已经拥有的代码的重复编写。继承就是复用接口
5:对象的创建,使用和生命周期,不同的程序使用不同的方法,java使用的是:一个被称为堆的内存池里动态的创建对象。在这个方法下,你才知道对象的数量,寿命及其确切的类型。它们都是在程序运行的一刹那决定的。Java中使用的是new关键词来创建一个那类对象的实例。
6:确保正确的清楚,对象要被调用是需要资源的,最明显的是内存资源。当不需要的时候,就应该清楚掉,这样才能释放它所占的资源,以供其它的对象使用。
7:异常处理,所谓异常处理就是与我们所能预知的或是不能预知的错误打交道。这个错误是无法避免的。
8:并发,计算机编程有一个基本的思想,就是要让程序能同时处理多个任务。Java中内置了多线程的支持,使得这个复杂的程度简单了很多。
。。。。。。。。。。。。。。。。。