java夜未眠讀書(shū)心得
通過(guò)參加這次的java夜未眠讀書(shū)培訓(xùn),這個(gè)對(duì)于系統(tǒng)的擴(kuò)展是很有用處的。new 已經(jīng)決定了你肯定要這個(gè)類(lèi),而靜態(tài)方法卻可以修改,不一定肯定返回你方法所在的類(lèi),可以在必要時(shí)替換為一個(gè)子類(lèi)。下面是學(xué)習(xí)啦小編為大家收集整理的java夜未眠讀書(shū)心得,歡迎大家閱讀。
java夜未眠讀書(shū)心得篇1
最近我在慧橋上java的培訓(xùn)課,老師推薦了本不錯(cuò)的java教材《Think in java 》
看書(shū)要學(xué)會(huì)做筆記,才會(huì)有更大收獲,每天讀30分鐘,希望能堅(jiān)持下去
今天重新翻了第一章
Introduction to object 面向?qū)ο笾饕獓@的五個(gè)要點(diǎn)
1.Everything is an object
每個(gè)東西都可以看作一個(gè)對(duì)象,它儲(chǔ)存了你所需要的必要信息,你可以通過(guò)特定的請(qǐng)求方式來(lái)向這個(gè)對(duì)象請(qǐng)求你所需要的東西
2.A Program is a bunch of objects telling each other what to do by sending messages
一個(gè)程序由很多對(duì)象組成,你可以向?qū)ο蟀l(fā)送消息來(lái)告訴他們做什么和怎樣做
3.Each object has its own memory made up other objects
你可以根據(jù)已經(jīng)存在的對(duì)象來(lái)創(chuàng)建新的對(duì)象,這應(yīng)該就是對(duì)象的繼承與重載吧
4.Every object has a type
每個(gè)對(duì)象都是類(lèi)的一個(gè)實(shí)例,都有自己的特定的需要其完成其功能的數(shù)據(jù)類(lèi)型
5.All objects of a particular type can receive the same messages
一個(gè)特定類(lèi)型的所有對(duì)象能夠獲取同樣的消息
java夜未眠讀書(shū)心得篇2
本書(shū)是一本與眾不同的Java入門(mén)好書(shū)。作者以獨(dú)特的視角,向Java初學(xué)者講述了如何才能真正理解和掌握J(rèn)ava語(yǔ)言。本書(shū)分3篇。第1篇為Java語(yǔ)言基本語(yǔ)法,包括Java語(yǔ)言概述、配置開(kāi)發(fā)環(huán)境、Java中的基本數(shù)據(jù)類(lèi)型、Java運(yùn)算符、Java流程控制語(yǔ)句和數(shù)組。
第2篇為Java語(yǔ)言高級(jí)語(yǔ)法,包括類(lèi)、對(duì)象、方法、繼承、多態(tài)、修飾符、接口、抽象類(lèi)、內(nèi)部類(lèi)、Java異常處理和多線程編程。
第3篇為Java語(yǔ)言編程進(jìn)階,包括Java編程常用知識(shí)、Java文件編程、Java文件I/O編程、Java TCP編程、Java UDP編程、Java Swing編程、JDBC編程,最后還給出了一個(gè)聊天程序?qū)嵗鸵粋€(gè)數(shù)據(jù)表操作窗口實(shí)例,將Swing、UDP、Java集合類(lèi)、線程同步、接口和JDBC編程有機(jī)地結(jié)合起來(lái),展示了開(kāi)發(fā)一個(gè)簡(jiǎn)單程序的典型步驟。
java夜未眠讀書(shū)心得篇3
首選很感謝Joshua Bloch寫(xiě)的這本書(shū),當(dāng)然更感謝我們的司令翻譯。至少目前我看到的100頁(yè)的內(nèi)容,基本沒(méi)發(fā)現(xiàn)翻譯很別扭的地方,包括錯(cuò)別字也沒(méi)有發(fā)現(xiàn),至少?zèng)]有影響到我對(duì)書(shū)中內(nèi)容的理解。再次感謝。
在后面的讀書(shū)心得里,我會(huì)根據(jù)我的個(gè)人理解,將書(shū)中的各個(gè)知識(shí)點(diǎn)逐個(gè)和大家分享。 書(shū)中的一些觀點(diǎn)我也不是完全贊同的,呵呵(估計(jì)是我的水平不夠,呵呵呵)。
我們先看全書(shū)第一個(gè)問(wèn)題:考慮用靜態(tài)工廠方法代替構(gòu)造器。
也就是,不再使用 new ()這種方式來(lái)獲得一個(gè)類(lèi)的實(shí)例,而是通過(guò)工廠方法獲得。
優(yōu)點(diǎn):
1 有名字
這個(gè)我體會(huì)還是比較深的,在JDK里,我見(jiàn)過(guò)一個(gè)類(lèi)的最多的構(gòu)造器數(shù)量,有16個(gè)。大家可以看看 Java.math.BigDecimal 這個(gè)類(lèi)就知道了。
就算一個(gè)類(lèi)的構(gòu)造器有4個(gè)左右,我想你很可能在使用的時(shí)候會(huì)極其注意,不要選錯(cuò)了到底是用哪一個(gè)。
所以,如果能提供一個(gè)很好命名的方法來(lái)實(shí)現(xiàn)構(gòu)造類(lèi),確實(shí)是一個(gè)不錯(cuò)的主意,比如
BigDecimal.getInstanceFromString(...); 我想這個(gè)名字雖然有點(diǎn)垃圾,但要表達(dá)的意思確實(shí)異常的明確。
在一些第三方的庫(kù)里面,這種情況更加突出。我許多時(shí)候不得不看看API文檔,來(lái)區(qū)分我的那個(gè)int參數(shù)到底是使用三個(gè)參數(shù)的構(gòu)造器,還是使用四個(gè)參數(shù)的構(gòu)造器。因?yàn)樗麄兲窳恕?/p>
2 可以單例
這個(gè)就不用說(shuō)了,你可以在方法里干你要做的任何事情,而new絕對(duì)會(huì)給你一個(gè)新的實(shí)例。
3 可以返回任何子類(lèi)型。
這個(gè)對(duì)于系統(tǒng)的擴(kuò)展是很有用處的。new 已經(jīng)決定了你肯定要這個(gè)類(lèi),而靜態(tài)方法卻可以修改,不一定肯定返回你方法所在的類(lèi),可以在必要時(shí)替換為一個(gè)子類(lèi)。
4 代碼簡(jiǎn)便
這點(diǎn)我體會(huì)不深,呵呵
不過(guò)這個(gè)寫(xiě)法我確實(shí)經(jīng)常用
List list = new ArrayList();
后面的那個(gè)ArrayList里面的 String就是一個(gè)例子吧。不過(guò)我倒是不是很在意這個(gè),因?yàn)槲液芟矚g這樣寫(xiě)了。
下面這個(gè)例子看上去確實(shí)不錯(cuò)。呵呵!
[java] view plain copypublic class Test extends Thread {
public static void main(String[] args) {
Test te = Test.newInstance();
}
public static Test newInstance() {
return new Test();
}
}
看了“java夜未眠讀書(shū)心得”又看了:
1.java學(xué)習(xí)心得體會(huì)范文