筆記2018-03-20

1、單行文本輸入?yún)^(qū)(Textfield)

在單行文本輸入?yún)^(qū)(Textfield)構(gòu)件上可能發(fā)生的事件包括FocusEvent焦點(diǎn)事件,所對(duì)應(yīng)的事件監(jiān)聽(tīng)器是FocusListener;ActionEvent動(dòng)作事件,所對(duì)應(yīng)的事件監(jiān)聽(tīng)器是ActionListener;MouseEvent鼠標(biāo)事件,所對(duì)應(yīng)的事件監(jiān)聽(tīng)器是MouseMotionListener;

2、字節(jié)流與字符流

stream結(jié)尾都是字節(jié)流,reader和writer結(jié)尾都是字符流 兩者的區(qū)別就是讀寫(xiě)的時(shí)候一個(gè)是按字節(jié)讀寫(xiě),一個(gè)是按字符。 實(shí)際使用通常差不多。 在讀寫(xiě)文件需要對(duì)內(nèi)容按行處理,比如比較特定字符,處理某一行數(shù)據(jù)的時(shí)候一般會(huì)選擇字符流。 只是讀寫(xiě)文件,和文件內(nèi)容無(wú)關(guān)的,一般選擇字節(jié)流。


image.png

3、Map的key不可以重復(fù),value是可以重復(fù)的

4、如何放掉一個(gè)指定占據(jù)的內(nèi)存空間?

在《java虛擬機(jī)》一書(shū)中明確講了,釋放掉占據(jù)的內(nèi)存空間是由gc完成,但是程序員無(wú)法明確強(qiáng)制其運(yùn)行,該空間在不被引用的時(shí)候不一定會(huì)立即被釋放,這取決于GC本身,無(wú)法由程序員通過(guò)代碼控制。

5、Thread.sleep() 和 Object.wait()

Thread.sleep() 和 Object.wait()都可以?huà)伋?InterruptedException。這個(gè)異常是不能忽略的,因?yàn)樗且粋€(gè)檢查異常(checked exception)。
checked exception:指的是編譯時(shí)異常,該類(lèi)異常需要本函數(shù)必須處理的,用try和catch處理,或者用throws拋出異常,然后交給調(diào)用者去處理異常。
runtime exception:指的是運(yùn)行時(shí)異常,該類(lèi)異常不必須本函數(shù)必須處理,當(dāng)然也可以處理。
Thread.sleep()拋出的InterruptException屬于checked exception;IllegalArgumentException屬于Runtime exception。

6、Java垃圾回收機(jī)制

垃圾回收主要針對(duì)的是堆區(qū)的回收,因?yàn)闂^(qū)的內(nèi)存是隨著線(xiàn)程而釋放的。堆區(qū)分為三個(gè)區(qū):年輕代(Young Generation)、年老代(Old Generation)、永久代(Permanent Generation,也就是方法區(qū))。
年輕代:對(duì)象被創(chuàng)建時(shí)(new)的對(duì)象通常被放在Young(除了一些占據(jù)內(nèi)存比較大的對(duì)象),經(jīng)過(guò)一定的Minor GC(針對(duì)年輕代的內(nèi)存回收)還活著的對(duì)象會(huì)被移動(dòng)到年老代(一些具體的移動(dòng)細(xì)節(jié)省略)。
年老代:就是上述年輕代移動(dòng)過(guò)來(lái)的和一些比較大的對(duì)象。Minor GC(FullGC)是針對(duì)年老代的回收
永久代:存儲(chǔ)的是final常量,static變量,常量池。

7、寫(xiě)入文件

一個(gè)文件中的字符要寫(xiě)到另一個(gè)文件中,首先需要讀取這個(gè)文件,所以要先建立輸入流,然后寫(xiě)到另一個(gè)文件,這時(shí)再建立輸出流.
所以要先建立輸入流,再建立輸出流.

8、instanceof 和getClass會(huì)在運(yùn)行時(shí)通過(guò)反射獲得對(duì)象真正的類(lèi)型。

很特殊的地方就是用在ArrayList中,如果ArrayList不知道泛型,在取出數(shù)據(jù)時(shí),都會(huì)默認(rèn)將數(shù)據(jù)更改為Object類(lèi)型,是不能夠賦值給其他類(lèi)型的引用的,但是,instanceof 和getClass會(huì)在運(yùn)行時(shí)通過(guò)反射獲得對(duì)象真正的類(lèi)型。

8、集合框架中線(xiàn)程安全的類(lèi)

在集合框架中,有些類(lèi)是線(xiàn)程安全的,這些都是jdk1.1中的出現(xiàn)的。在jdk1.2之后,就出現(xiàn)許許多多非線(xiàn)程安全的類(lèi)。 下面是這些線(xiàn)程安全的同步的類(lèi):

vector:就比arraylist多了個(gè)同步化機(jī)制(線(xiàn)程安全),因?yàn)樾瘦^低,現(xiàn)在已經(jīng)不太建議使用。在web應(yīng)用中,特別是前臺(tái)頁(yè)面,往往效率(頁(yè)面響應(yīng)速度)是優(yōu)先考慮的。
statck:堆棧類(lèi),先進(jìn)后出
hashtable:就比hashmap多了個(gè)線(xiàn)程安全
enumeration:枚舉,相當(dāng)于迭代器

除了這些之外,其他的都是非線(xiàn)程安全的類(lèi)和接口。

9、Object的wait()方法

wait() 導(dǎo)致當(dāng)前的線(xiàn)程等待,直到其他線(xiàn)程調(diào)用此對(duì)象的 notify() 方法或 notifyAll() 方法。
java object默認(rèn)的基本方法:
getClass(), hashCode(), equals(), clone(), toString(), notify(), notifyAll(), wait(), finalize()

10、HttpServletRequest類(lèi)主要處理:

1.讀取和寫(xiě)入HTTP頭標(biāo)
2.取得和設(shè)置cookies
3.取得路徑信息
4.標(biāo)識(shí)HTTP會(huì)話(huà)

11、volatile

volatile用于限定變量只能從內(nèi)存中讀取,保證對(duì)所有線(xiàn)程而言,值都是一致的。但是volatile不能保證原子性,也就不能保證線(xiàn)程安全。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語(yǔ)法,類(lèi)相關(guān)的語(yǔ)法,內(nèi)部類(lèi)的語(yǔ)法,繼承相關(guān)的語(yǔ)法,異常的語(yǔ)法,線(xiàn)程的語(yǔ)...
    子非魚(yú)_t_閱讀 34,899評(píng)論 18 399
  • 從三月份找實(shí)習(xí)到現(xiàn)在,面了一些公司,掛了不少,但最終還是拿到小米、百度、阿里、京東、新浪、CVTE、樂(lè)視家的研發(fā)崗...
    時(shí)芥藍(lán)閱讀 42,901評(píng)論 11 349
  • (一)Java部分 1、列舉出JAVA中6個(gè)比較常用的包【天威誠(chéng)信面試題】 【參考答案】 java.lang;ja...
    獨(dú)云閱讀 7,280評(píng)論 0 62
  • 自古就有季布一諾千金的美談,時(shí)至今日,無(wú)論是在哪個(gè)圈子,不守信諾的人一般都會(huì)受到排斥。如今的社會(huì)出現(xiàn)了很多欺詐的行...
    昊洋_寫(xiě)作的匠心閱讀 163評(píng)論 1 3
  • 日期:2014年4月14日主題:《想要快樂(lè)?學(xué)會(huì)感恩》地址:http://v.163.com/movie/2014...
    元元閱讀 899評(píng)論 0 1

友情鏈接更多精彩內(nèi)容