Think in Java 讀后感(1)

今天呢 利用閑余時(shí)間讀了Java編程思維里的前三章,基本上是介紹Java中的各種基礎(chǔ)知識(shí)侈净,自己接觸開(kāi)發(fā)這一塊也接近一年了连锯。再會(huì)回過(guò)頭看基礎(chǔ)知識(shí)的時(shí)候归苍,也有些收獲。

1 對(duì)象的finalize()方法

和java的內(nèi)存回收機(jī)制有關(guān)系运怖,當(dāng)一個(gè)對(duì)象被回收的時(shí)候,會(huì)調(diào)用這個(gè)對(duì)象的finalize()方法夏伊,但是我們一般不用重寫(xiě)這個(gè)方法摇展,除非你有特殊需求的時(shí)候。經(jīng)過(guò)查資料得知溺忧,比如在JNI或者與C++交互的時(shí)候咏连,由于C語(yǔ)言和C++的特點(diǎn),垃圾回收機(jī)制不能正確的回收通過(guò)C或者C++new出來(lái)的內(nèi)存空間鲁森,這個(gè)時(shí)候祟滴,就需要手動(dòng)去回收了。個(gè)人覺(jué)得歌溉,這個(gè)方法可以用來(lái)在這個(gè)對(duì)象被銷(xiāo)毀的時(shí)候垄懂,做一些數(shù)據(jù)的存留或者掃尾工作。另外痛垛,學(xué)習(xí)到一個(gè)和System.gc()作用的相同的方法草慧,System.runFinalize();這個(gè)方法的作用和System.gc()的作用是一樣的,通知內(nèi)存回收機(jī)制注意回收這塊內(nèi)存匙头,但是只能是通知作用漫谷,具體什么時(shí)候回收跟java內(nèi)存回收機(jī)制的算法有關(guān)。

2 static關(guān)鍵字蹂析。

這個(gè)平時(shí)就用的比較多了舔示,static 相信每個(gè)接觸過(guò)java的都對(duì)這個(gè)關(guān)鍵字很熟悉,畢竟你保存常量电抚,單例模式惕稻,各種各種,都會(huì)用到static關(guān)鍵字喻频。
下面是static的一些定義:

static表示“全局”或者“靜態(tài)”的意思缩宜,用來(lái)修飾成員變量和成員方法,也可以形成靜態(tài)static代碼塊甥温,但是Java語(yǔ)言中沒(méi)有全局變量的概念

被static修飾的成員變量和成員方法獨(dú)立于該類(lèi)的任何對(duì)象锻煌。也就是說(shuō),它不依賴(lài)類(lèi)特定的實(shí)例姻蚓,被類(lèi)的所有實(shí)例共享宋梧。只要這個(gè)類(lèi)被加載,Java虛擬機(jī)就能根據(jù)類(lèi)名在運(yùn)行時(shí)數(shù)據(jù)區(qū)的方法區(qū)內(nèi)定找到他們狰挡。因此捂龄,static對(duì)象可以在它的任何對(duì)象創(chuàng)建之前訪(fǎng)問(wèn)释涛,無(wú)需引用任何對(duì)象。

用public修飾的static成員變量和成員方法本質(zhì)是全局變量和全局方法倦沧,當(dāng)聲明它類(lèi)的對(duì)象時(shí)唇撬,不生成static變量的副本,而是類(lèi)的所有實(shí)例共享同一個(gè)static變量展融。

static變量前可以有private修飾窖认,表示這個(gè)變量可以在類(lèi)的靜態(tài)代碼塊中,或者類(lèi)的其他靜態(tài)成員方法中使用(當(dāng)然也可以在非靜態(tài)成員方法中使用--廢話(huà))告希,但是不能在其他類(lèi)中通過(guò)類(lèi)名來(lái)直接引用扑浸,這一點(diǎn)很重要。實(shí)際上你需要搞明白燕偶,private是訪(fǎng)問(wèn)權(quán)限限定喝噪,static表示不要實(shí)例化就可以使用,這樣就容易理解多了指么。

static前面加上其它訪(fǎng)問(wèn)權(quán)限關(guān)鍵字的效果也以此類(lèi)推.酝惧。static修飾的成員變量和成員方法習(xí)慣上稱(chēng)為靜態(tài)變量和靜態(tài)方法,可以直接通過(guò)類(lèi)名來(lái)訪(fǎng)問(wèn)

靜態(tài)方法在調(diào)用的時(shí)候涧尿,不用加載類(lèi)的實(shí)例就可以直接用系奉。這就是為什么常用的main()方法是static關(guān)鍵字來(lái)修飾的了。

下面記下之前面試時(shí)候被問(wèn)到單例模式的懶漢和餓漢模式:

1 懶漢模式(類(lèi)加載時(shí)不初始化)
package Singleton;
public class LazySingleton {
    //懶漢式單例模式
    //比較懶姑廉,在類(lèi)加載時(shí)缺亮,不創(chuàng)建實(shí)例,因此類(lèi)加載速度快桥言,但運(yùn)行時(shí)獲取對(duì)象的速度慢
  private static LazySingleton intance = null;//靜態(tài)私用成員萌踱,沒(méi)有初始化
    
    private LazySingleton()
    {
        //私有構(gòu)造函數(shù)
    }
    
    public static synchronized LazySingleton getInstance()    //靜態(tài),同步号阿,公開(kāi)訪(fǎng)問(wèn)點(diǎn)
    {
        if(intance == null)
        {
            intance = new LazySingleton();
        }
        return intance;
      }
    }

2 餓漢式單例模式(在類(lèi)加載時(shí)就完成了初始化并鸵,所以類(lèi)加載較慢,但獲取對(duì)象的速度快)
package Singleton;

public class EagerSingleton {
    //餓漢單例模式
    //在類(lèi)加載時(shí)就完成了初始化扔涧,所以類(lèi)加載較慢园担,但獲取對(duì)象的速度快
    
    private static EagerSingleton instance = new EagerSingleton();//靜態(tài)私有成員,已初始化
    
    private EagerSingleton() 
    {
        //私有構(gòu)造函數(shù)
    }
    
    public static EagerSingleton getInstance()    //靜態(tài)枯夜,不用同步(類(lèi)加載時(shí)已初始化弯汰,不會(huì)有多線(xiàn)程的問(wèn)題)
    {
        return instance;
    }
    
    
}

以上就是今天看書(shū)所得,明天繼續(xù)看湖雹,加油咯~~~

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末咏闪,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子摔吏,更是在濱河造成了極大的恐慌鸽嫂,老刑警劉巖纵装,帶你破解...
    沈念sama閱讀 217,509評(píng)論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異据某,居然都是意外死亡橡娄,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,806評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門(mén)哗脖,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)瀑踢,“玉大人,你說(shuō)我怎么就攤上這事才避。” “怎么了氨距?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,875評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵桑逝,是天一觀(guān)的道長(zhǎng)。 經(jīng)常有香客問(wèn)我俏让,道長(zhǎng)楞遏,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,441評(píng)論 1 293
  • 正文 為了忘掉前任首昔,我火速辦了婚禮寡喝,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘勒奇。我一直安慰自己预鬓,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,488評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布赊颠。 她就那樣靜靜地躺著格二,像睡著了一般。 火紅的嫁衣襯著肌膚如雪竣蹦。 梳的紋絲不亂的頭發(fā)上顶猜,一...
    開(kāi)封第一講書(shū)人閱讀 51,365評(píng)論 1 302
  • 那天,我揣著相機(jī)與錄音痘括,去河邊找鬼长窄。 笑死,一個(gè)胖子當(dāng)著我的面吹牛纲菌,可吹牛的內(nèi)容都是我干的挠日。 我是一名探鬼主播,決...
    沈念sama閱讀 40,190評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼驰后,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼肆资!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起灶芝,我...
    開(kāi)封第一講書(shū)人閱讀 39,062評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤郑原,失蹤者是張志新(化名)和其女友劉穎唉韭,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體犯犁,經(jīng)...
    沈念sama閱讀 45,500評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡属愤,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,706評(píng)論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了酸役。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片住诸。...
    茶點(diǎn)故事閱讀 39,834評(píng)論 1 347
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖涣澡,靈堂內(nèi)的尸體忽然破棺而出贱呐,到底是詐尸還是另有隱情,我是刑警寧澤入桂,帶...
    沈念sama閱讀 35,559評(píng)論 5 345
  • 正文 年R本政府宣布奄薇,位于F島的核電站,受9級(jí)特大地震影響抗愁,放射性物質(zhì)發(fā)生泄漏馁蒂。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,167評(píng)論 3 328
  • 文/蒙蒙 一蜘腌、第九天 我趴在偏房一處隱蔽的房頂上張望沫屡。 院中可真熱鬧,春花似錦撮珠、人聲如沸沮脖。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,779評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)倘潜。三九已至,卻和暖如春志于,著一層夾襖步出監(jiān)牢的瞬間涮因,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,912評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工伺绽, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留养泡,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,958評(píng)論 2 370
  • 正文 我出身青樓奈应,卻偏偏與公主長(zhǎng)得像澜掩,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子杖挣,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,779評(píng)論 2 354

推薦閱讀更多精彩內(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_閱讀 31,631評(píng)論 18 399
  • (一)Java部分 1、列舉出JAVA中6個(gè)比較常用的包【天威誠(chéng)信面試題】 【參考答案】 java.lang;ja...
    獨(dú)云閱讀 7,104評(píng)論 0 62
  • 一:java概述:1乔妈,JDK:Java Development Kit蝙云,java的開(kāi)發(fā)和運(yùn)行環(huán)境,java的開(kāi)發(fā)工...
    ZaneInTheSun閱讀 2,650評(píng)論 0 11
  • 小姐妹她說(shuō)她戀愛(ài)了身隐,突然被他外地來(lái)度假的女性朋友說(shuō)“你和她在一起太累∥椋”因?yàn)槌燥堃院舐找剑耘笥颜f(shuō)看電影怎么樣,她說(shuō)...
    星小姐De閱讀 900評(píng)論 0 1
  • 今天和同事一起去參加公司的團(tuán)險(xiǎn)業(yè)務(wù)早敬,在車(chē)上聽(tīng)到同事的聊天,我沒(méi)辦法聊入進(jìn)去大脉,看到自己又沒(méi)辦法聊到一起搞监,內(nèi)心又開(kāi)始否...
    88艷閱讀 113評(píng)論 0 0