Practical Java】的更多相关文章

题记: 花了一周把Peter Haggar的<practical Java>看了遍,有所感悟,年纪大了, 写下笔记,方便日后查看.也希望有缘之人可以看看,做个渺小的指路人. 不足之处还望指正. 概述: 全书分为六个部分,包括一般技术.对象与相等性.异常处理.性能.多线程.对象. 一般技术:举例了几个java常见错误用法的说明和解释,诸如array和vector的选择,多态与instanceof等等 对象和相等性则:针对equals的详细说明,是迄今本人见过对equals理解最深的一本书了,其中…
Practice 1, 4, 7, 8 1. 参数传递:by value or by reference 变量型别:reference 和 primitive Java中的变量分为两种:reference type和primitive type(built-in type) 只有少数最常用的变量是primitive type,这些primitive type又会有对应的外覆类(wrapper class) primitive types wrapper class boolean Boolean…
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将追究法律责任!原文链接:http://www.cnblogs.com/jiangzhengjun/p/4259259.html 实践1.    参数是以by value方式而非by reference方式传递 一个普通存在的误解是:java中的参数是以 by value 方式传递.其实不是这样的,参…
Practice 16~27 一 异常控制流(exceptional control flow)机制: try{ <block> } catch(<ExceptionClass> e){ <block> throw e; //若不能处理该异常,则抛出 } finally{ <block> } 若在try段抛出异常,先跳过try段内异常后面的语句,执行catch段,再执行finally段,否则,执行完try段,直接处理finally段 若catch段中再次抛出…
Practice 2,3 final 作用于by value变量时,一旦赋值不可更改 作用于by reference变量时,一旦不能指向第二个对象,但是可以改变对象的内容.比如不可以第二次=new xx(): 作用于函数时,该函数不能被subclass覆写 作用于class时,改class内所有函数必须是final…
Practice5,6,9,10,11,12,13,14,15 ==判断等号两边两个变量储存的值是否相同,如果是两个对象,则判断两个变量储存的对象地址是否相同. 大多数时候,我们需要判断的不是左右两个对象是否存储在同一个地址,而是它们的内容是否相等,所以需要另外实现equals函数 Object自带equals函数,如果对象对应的class没有自己的equals函数,则调用它父类的equals函数,如果也没有的话,最后调用Object的equals函数 Object的equals函数只会检查ob…
一.避免在循环条件中使用复杂表达式 在不做编译优化的情况下,在循环中,循环条件会被反复计算,如果不使用复杂表达式,而使循环条件值不变的话,程序将会运行的更快. 例子: import java.util.vector; class cel { void method (vector vector) { for (int i = 0; i < vector.size (); i++) // violation ; // ... } } 更正: class cel_fixed { void metho…
集合类说明及区别 Collection ├List │├LinkedList │├ArrayList │└Vector │ └Stack └Set Map ├Hashtable ├HashMap └WeakHashMap Collection 接口 Collection 是最基本的集合接口,一个 Collection 代表一组 Object,即 Collection 的元素(Elements).一些 Collection 允许相同的元素而另一些不行.一些能排序而另一些不行.Java SDK 不提…
标签:Iterator Java List ArrayList Vector 线性表,链表,哈希表是常用的数据结构,在进行Java开发时,JDK已经为我们提供了一系列相应的类来实现基本的数据结构.这些类均在java.util包中.本文试图通过简单的描述,向读者阐述各个类的作用以及如何正确使用这些类. Collection├List│├LinkedList│├ArrayList│└Vector│ └Stack└SetMap├Hashtable├HashMap└WeakHashMapCollecti…
Java中List,ArrayList.Vector,map,HashTable,HashMap区别用法 标签: vectorhashmaplistjavaiteratorinteger ArrayList 和Vector是采用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,都允许直接序号索引元素,但是插入数据要设计到数组元素移动 等内存操作,所以索引数据快插入数据慢,Vector由于使用了synchronized方法(线程安全)所以性能上比ArrayList要差,Linke…