1鸟辅、單行文本輸入?yún)^(qū)(Textfield)
在單行文本輸入?yún)^(qū)(Textfield)構件上可能發(fā)生的事件包括FocusEvent焦點事件诺擅,所對應的事件監(jiān)聽器是FocusListener;ActionEvent動作事件抵窒,所對應的事件監(jiān)聽器是ActionListener归薛;MouseEvent鼠標事件裳朋,所對應的事件監(jiān)聽器是MouseMotionListener;
2窟感、字節(jié)流與字符流
stream結尾都是字節(jié)流讨彼,reader和writer結尾都是字符流 兩者的區(qū)別就是讀寫的時候一個是按字節(jié)讀寫,一個是按字符肌括。 實際使用通常差不多点骑。 在讀寫文件需要對內容按行處理,比如比較特定字符谍夭,處理某一行數(shù)據(jù)的時候一般會選擇字符流黑滴。 只是讀寫文件,和文件內容無關的紧索,一般選擇字節(jié)流袁辈。
3、Map的key不可以重復珠漂,value是可以重復的
4晚缩、如何放掉一個指定占據(jù)的內存空間?
在《java虛擬機》一書中明確講了媳危,釋放掉占據(jù)的內存空間是由gc完成荞彼,但是程序員無法明確強制其運行,該空間在不被引用的時候不一定會立即被釋放待笑,這取決于GC本身鸣皂,無法由程序員通過代碼控制。
5、Thread.sleep() 和 Object.wait()
Thread.sleep() 和 Object.wait()都可以拋出 InterruptedException寞缝。這個異常是不能忽略的,因為它是一個檢查異常(checked exception)癌压。
checked exception:指的是編譯時異常,該類異常需要本函數(shù)必須處理的荆陆,用try和catch處理滩届,或者用throws拋出異常,然后交給調用者去處理異常被啼。
runtime exception:指的是運行時異常帜消,該類異常不必須本函數(shù)必須處理,當然也可以處理浓体。
Thread.sleep()拋出的InterruptException屬于checked exception券犁;IllegalArgumentException屬于Runtime exception。
6汹碱、Java垃圾回收機制
垃圾回收主要針對的是堆區(qū)的回收粘衬,因為棧區(qū)的內存是隨著線程而釋放的。堆區(qū)分為三個區(qū):年輕代(Young Generation)咳促、年老代(Old Generation)稚新、永久代(Permanent Generation,也就是方法區(qū))跪腹。
年輕代:對象被創(chuàng)建時(new)的對象通常被放在Young(除了一些占據(jù)內存比較大的對象),經過一定的Minor GC(針對年輕代的內存回收)還活著的對象會被移動到年老代(一些具體的移動細節(jié)省略)褂删。
年老代:就是上述年輕代移動過來的和一些比較大的對象。Minor GC(FullGC)是針對年老代的回收
永久代:存儲的是final常量冲茸,static變量屯阀,常量池。
7轴术、寫入文件
一個文件中的字符要寫到另一個文件中难衰,首先需要讀取這個文件,所以要先建立輸入流,然后寫到另一個文件,這時再建立輸出流.
所以要先建立輸入流,再建立輸出流.
8、instanceof 和getClass會在運行時通過反射獲得對象真正的類型逗栽。
很特殊的地方就是用在ArrayList中盖袭,如果ArrayList不知道泛型,在取出數(shù)據(jù)時彼宠,都會默認將數(shù)據(jù)更改為Object類型鳄虱,是不能夠賦值給其他類型的引用的,但是凭峡,instanceof 和getClass會在運行時通過反射獲得對象真正的類型拙已。
8、集合框架中線程安全的類
在集合框架中摧冀,有些類是線程安全的倍踪,這些都是jdk1.1中的出現(xiàn)的霉涨。在jdk1.2之后,就出現(xiàn)許許多多非線程安全的類惭适。 下面是這些線程安全的同步的類:
vector:就比arraylist多了個同步化機制(線程安全),因為效率較低楼镐,現(xiàn)在已經不太建議使用癞志。在web應用中,特別是前臺頁面框产,往往效率(頁面響應速度)是優(yōu)先考慮的凄杯。
statck:堆棧類,先進后出
hashtable:就比hashmap多了個線程安全
enumeration:枚舉秉宿,相當于迭代器
除了這些之外戒突,其他的都是非線程安全的類和接口。
9描睦、Object的wait()方法
wait() 導致當前的線程等待膊存,直到其他線程調用此對象的 notify() 方法或 notifyAll() 方法。
java object默認的基本方法:
getClass(), hashCode(), equals(), clone(), toString(), notify(), notifyAll(), wait(), finalize()
10忱叭、HttpServletRequest類主要處理:
1.讀取和寫入HTTP頭標
2.取得和設置cookies
3.取得路徑信息
4.標識HTTP會話
11隔崎、volatile
volatile用于限定變量只能從內存中讀取,保證對所有線程而言韵丑,值都是一致的爵卒。但是volatile不能保證原子性,也就不能保證線程安全撵彻。