java编程思想第一章

1.抽象过程
Alan kay 总结的面向对象的编程语言:

  • 万物皆为对象。
  • 程序是对象的集合,他们通过发送信息来告诉彼此所要做的。
  • 每个对象都有自己的由其他对象所构成的存储。
  • 每个对象都拥有其类型。
  • 某一特定类型的所有对象都可以接受同样的信息。

Booch对对象有一个更简洁的描述:对象是具有状态,行为和标识。这意味着每一个对象哪个都可以拥有内部数据(他们给出了该对象的状态)和方法(它们产生行为),并且每一个对象都可以与其他对象区分开来,就是说每一个对象在内存中有唯一的地址。
2.每一个对象都有一个接口
创建抽象数据类型(类)是面向对象程序设计的基本概念之一。
类描述了具有相同特性(数据元素)和行为(功能)的对象集合,所以一个类实际上就是一个数据类型。
面向对象程序设计的挑战之一,就是问题空间的元素与解空间的对象之间建立一一映射。
3.被隐藏的具体实现
访问控制存在的一个原因是让客户端程序员无法触及他们不应该触及的部分,第二个原因是允许库设计者改变类内部的工作方式。
Java用3个关键字在类的内部设定边界:public,private,protected。
public:表示紧随其后的元素对任何人都是可用的。
private:表示除了类创建者和类的内部方法之外,其他人都不能访问的元素。
protected:与private相似,差别在于继承的类可以访问。
什么都不加的话,称为包访问权限,类可以访问同一个包中的其他类成员。
4.复用的具体实现
使用现有类合成新的类称为组合。如果组合是动态的,则被称为聚合。
在建立新类时,首先考虑组合,因为他更加灵活。
5.单根继承结构
单根继承结构保证所有对象都具备某些功能。
单根继承结构使垃圾回收器的实现变得容易。
6.容器
不同的容器提供了不同类型的接口和外部行为。
不同类型的容器对某些操作具有不同的效率。
7.参数化类型
Java SE5出现之前,容器中存储的对象都只具有Java中的通用类型:Object
Java SE5重大变化之一就是增加了参数化类型 : 范型。ArrayList<?>=new ArrayList<?>();

原文地址:http://blog.51cto.com/13569015/2059927

时间: 2024-10-28 10:53:52

java编程思想第一章的相关文章

&lt;java编程思想&gt;第一章读书笔记二

7.伴随多态的可互换对象 前面说了继承,我们知道继承中存在基类(父类)以及导出类(子类),不知道大家有没有遇到过这种情况?就是在向一个方法中传递一个对象作为参数时,我们往往会选择传递一个基类而不是一个子类,为什么要这么做呢?其实原因也很简单,说的高大上一点就是这样做有利于代码的健壮性和可扩展性,说的详细还是有利于代码的健壮性和可扩展性,更重要的也就是可扩展性. 还拿喝可乐的例子来说,如果你传递的参数对象是可乐,那么不管你是给我百事可乐还是可口可乐我都可以接受啊,但是如果你传递的参数仅仅是百事可乐

Java编程思想 第一章、对象导论

对象导论阅读理解: 1.解决问题的复杂性直接取决于抽象的类型和质量(抽象类型及抽象的是什么?). 汇编语言是对底层机器的轻微抽象,而C.Basic等指令式语言都是对汇编语言的抽象,它们所做的主要抽象仍要求在解决问题时 要基于计算机的结构,而不是基于要解决的问题的结构来考虑,Java语言与C.Basic等相反,其面向问题空间的抽象而非计算 机底层实现来考虑问题结构. 2.解空间及问题空间 解空间:对应于机器模型,问题建模的地方: 问题空间:实际解决问题的模型,问题存在的地方,如一项业务: 3.对象

Java编程思想-第一章(1)

简介 这是第一次写读书总结,我不想说太多的豪言壮志只想可以这样一直坚持下去. 1.1 抽象过程 最早出现的计算机语言,汇编语言是对底层机器的轻微抽象,而其后所谓的命令式语言,如C,BASIC等都是对汇编的抽象,它们所做的主要抽象是解决问题基于计算机结构,而不是基于解决问题的结构考虑,所以程序难以编写,且维护代价高oop面向对象语言允许根据问题来描述问题,而不是根据运行解决方案的计算机来描述问题,所以这是一种更强有力的语言抽象 前人总结了面向对象的五个基本特征: 万物皆对象:将对象视为奇特变量,可

学习java编程思想 第一章 对象导论

一.面向对象的五个基本特性: 1.万物皆为对象.将对象视为奇特的变量,他可以存储数据,还可以要求它在自身上执行操作. 2.程序是对象的合集,他们通过发送消息告诉彼此所要做的. 3.每个对象都有自己的由其他对象所构成的存储.换句话说,可以通过创建包含现有对象的包的形式来创建新类型的对象. 4.每个对象否拥有其类型.每个类最重要的特性就是"可以发送什么样的消息给它". 5.某一特定类型的所有对象都可以接受同样的消息. 二.在试图开发或理解一个程序设计时,最好的方法之一就是将对象想象为&qu

java编程思想 第二章

这篇时间较之前篇章时间靠后,是由于,某一天晚上看完Java编程思想文献之后来不及做笔记了. 以下笔记基本为转载,不是原创 第二章   一切都是对象 目录: 2.1 用引用操纵对象 2.2 必须由你创建所有对象 2.3 永远不需要销毁对象 2.4 创建新的数据类型:类 2.5 方法.参数和返回值 2.6 构建一个Java程序 2.7 你的第一个Java程序 2.8 注释和嵌入式文档 2.9 编码风格 2.1 用引用操纵对象 一切都看作对象,操纵的标识符实际上是对象的一个“引用”,遥控器(引用)操纵

java编程思想--第二章 一切都是对象

如果不做引申的话,本章没有多少可总结的内容.有些以前没有注意的细节可以写下来. 1.数据存储的位置 (1).寄存器.程序控制不了. (2).堆栈.对象的引用.基本类型. (3).堆.各种对象. (4).常量存储.和代码在一起. (5).非RAM存储.主要指流对象和持久化对象,前者准备网络传输,后者被丢到了硬盘上. 2.java中的数组会被自动初始化: (1).基本类型数组元素会被初始化为0 (2).引用类型数组元素会被初始化为null 3.变量作用域 (1).基本类型的跟C一样 (2).引用类型

Java编程思想---第九章 接口(上)

第九章 接口 接口和内部类为我们提供了一种将接口与实现分离的更加结构化的方法. 9.1 抽象类和抽象方法 Java提供一个叫做抽象方法的机制,这个机制是不完整的,仅有声明而没有方法体,抽象方法的语法如下: abstract void f(); 包含抽象方法的类叫做抽象类,如果一个类包含一个或者多个抽象方法,该类必须被限定为抽象的,否则编译器就会报错. 如果一个抽象类不完整,那么当我们试图产生该类的对象时,由于抽象类创建对象时不安全的,所以我们会从编译器那里得到一条出错消息,这样编译器会确保抽象类

java编程思想笔记(第一章)

Alan Kay 第一个定义了面向对象的语言 1.万物皆对象 2.程序是对象的集合,他们彼此通过发送消息来调用对方. 3.每个对象都拥有由其他对象所构成的存储 4.每个对象都拥有其类型(TYpe) 5.某一特定类型的所有对象都可以接收同样的消息. Booch提出一种更简洁的描述: 对象拥有状态(state) 行为(behavior) 和标识(identity) 每个对象都有一个接口 每个对象都属于定义了特性和行为的某个类(特性可以理解为属性的状态,行为可以理解为method) 在面向对象的程序设

JAVA编程思想学习笔记——第一章 对象导论

搞了一年多java,野路子出身,发现java基础这块还是相当的薄弱!故决定学习<Java编程思想>这本书.在此把学习的知识点记录下! 面向对象的五大特性 1.万物皆为对象 2.程序是对象的集合,它们通过发送消息来告诉彼此所要做的 3.每个对象都由自己的由其它对象所构成的存储 4.每个对象都拥有其类型 5.某一特定类型的所有对象都可以接收同样的信息  单根继承结构 所有的类都继承自单一的基类,Object.在单根集成结构中的所有对象都具有一个公用接口,所以他们归根到底都是相同的基本类型.单根集成