java编程思想读书笔记-第一章对象入门

来源:互联网 发布:京东和淘宝是一家吗 编辑:程序博客网 时间:2024/04/29 13:26

第一章 对象入门

1.1抽象的进步

(1)所有东西都是对象。

(2)每个程序都是一大堆对象的组合。(通过消息的传递 一个对象可告诉另一个对象该做什么)

(3)每个对象都有自己的存储空间,可容纳其他对象。

(4)每个对象都有一种类型。(每个对象都是某个 类 的一个 实例 其中 类 Class 是 类型 Type 的同义词         

     一个类最重要的特征就是 能将什么消息发给它)

(5)同一类别的类的所有对象都能接收相同的消息。(圆和形状,一个圆完全能接收形状消息。)

接口:可以帮助程序员减少程序错误。(bug的出现)。

1.6多态

后期绑定一条消息发给一个对象后实际调用的代码要等到运行时间才会确定编译器能做的事情只是保证你调用的函数真的存在 并会对参数和返回值进行类型检查如果有误 就叫 类型错误 总之它唯一不知道的就是最终执行的代码是什么。(OOP采用这种方法)

为真正实现这种后期绑定 Java 从绝对函数调用中借用了一点儿代码 这段代码利用对象中保存的信息 可计算出函数体所在的地址 具体过程还会在第 7 章详述 这样一来根据那段代码的内容 每个对象的行为都可能有所不同 将一条消息发给一个对象后 对象实际可正确判断出自己该采取的行动。

1.7 对象的创建和存在时间

C++ 对象需要的数据位于哪里,如何控制时间。C++认为效率第一位,允许程序员做出选择。

Java的对象的创建:在内存池中动态创建对象,拥有更大的灵活性。Java创建时,使用new 这个关键字。

 

C++若操作不当,造成内存泄露(出现一片谁也用不了的内存),令人头痛的问题。

Java采用垃圾收集器。防止内存泄露。

 

1.7.1集合:

Arraylist 数组列表

Sets      组合

Queues    队列

Hashtables散列表

Tree      树

Stacks    堆栈

 

Arraylist 与 linkedlist 的区别

数组索引快,在序列中部插入一个元素,则数组开销巨大。

1.7.2 单根结构

单根节点:



 

1.8违例控制

向下强转成为错误,会得到违例。

1.9多线程

共享的资源加锁,一个线程将资源锁定,完成后再释放这个锁。(强一致性,牺牲了性能)。

分布式采用弱一致性(最终一致性) 使用ThreadLocal 创建属性副本。

用到了synchronized关键字。

1.10持久性

Java可将对象存在磁盘上,以后如何时候可取用。

1.13极度编程

XP 无疑是极度编程最疯狂最激进的一种。

XP 准则最欣赏的两条:先写测试代码(正式编写程序之前先写出测试代码) 以及合伙编程。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0 0
原创粉丝点击