代碼查錯

abstract class Name {
    private String name;
    public abstract boolean isStupidName(String name) {}
} 
答案:錯院尔。abstract method 必須以分號結(jié)尾兰粉,且不帶花括號棚赔。
public class Something {
    void doSomething() {
        private String s = "";
        int I = s.length();
    }
}
答案: 錯单寂。局部變量前不能放置任何訪問修飾符 (private,public笑诅,和 protected)。final 可以用來修飾局部變量

(final 如同 abstract 和 strictfp吆你,都是非訪問修飾符弦叶,strictfp 只能修飾 class 和 method 而非variable)。
public class Something {
    private abstract String doSomething();
}
答案: 錯妇多。abstract 的 methods 不能以 private 修飾伤哺。abstract 的 methods 就是讓子類implement(實(shí)現(xiàn))具體細(xì)節(jié)的,怎么可以用 private 把 abstract method 封鎖起來呢? (同理者祖,abstract method 前不能加 final)立莉。
public class Something {
    public int addOne(final int x) {
        return ++x;
    }
} 
答案: 錯。int x 被修飾成 final七问,意味著 x 不能在 addOne method 中被修改蜓耻。
public class Something {
    public static void main(String[] args) {
        Other o = new Other();
        new Something().addOne(o);
    }
    public void addOne(final Other o) {
        o.i++;
    }
}
class Other {
    public int i;
} 
答案: 正確。在 addOne method 中械巡,參數(shù) o 被修飾成 final刹淌。如果在 addOne method 里我們修改了 o 的 reference(比如: o = new Other();),那么如同上例這題也是錯的坟比。但這里修改的是 o 的 member vairable(成員變量),而 o 的 reference 并沒有改變嚷往。

final關(guān)鍵字

final修飾變量

  • final關(guān)鍵字修飾變量葛账,意為不可改變。

  • final修飾成員變量皮仁,兩種方式初始化:

    • 聲明同時(shí)初始化
    • 構(gòu)造函數(shù)中初始化
  • final關(guān)鍵字也可以修飾局部變量籍琳,使用之前初始化即可菲宴。

    public class Emp {
      private final int no = 100; //final變量聲明時(shí)初始化
      public void testFinal(){
        no = 99;//編譯錯誤,final的變量不可被改變
      }
    }
    

final修飾方法

  • final關(guān)鍵字修飾的方法不可以被重寫。
  • 使一個(gè)方法不能被重寫的意義在于:防止子類在定義新方法時(shí)造成的"不經(jīng)意"重寫趋急。
2018-01-01 14-23-22屏幕截圖.png

final修飾類

  • final關(guān)鍵字修飾的類不可以被繼承喝峦。

    final class Foo { }

    class Goo extends Foo { } //會有編譯錯誤

  • JDK中的一些基礎(chǔ)類庫被定義為final的,例如:String呜达、Math谣蠢、Integer、Double等等查近。

  • 使一個(gè)類不能被繼承的意義在于:可以保護(hù)類不被繼承修改眉踱,可以控制濫用繼承對系統(tǒng)造成的危害

static final常量

  • static final 修飾的成員變量成為常量,必須聲明同時(shí)初始化霜威,不可被改變谈喳。

  • static final 常量會在編譯期被替換,例如:

    class Foo{
      public static final int NUM = 100;
    }
    
    class Goo{
      public static void main(String[] args){
          System.out.println(Foo.NUM);
        // 代碼編譯時(shí)戈泼,會替換為:System.out.println(100);
      }
    }
    

    static final 常量 Foo.NUM會在編譯時(shí)被替換為其常量值(100) 婿禽,在運(yùn)行Goo類時(shí),F(xiàn)oo類不需要被載入大猛。

    ?

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末扭倾,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子胎署,更是在濱河造成了極大的恐慌吆录,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,122評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件琼牧,死亡現(xiàn)場離奇詭異恢筝,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)巨坊,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,070評論 3 395
  • 文/潘曉璐 我一進(jìn)店門撬槽,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人趾撵,你說我怎么就攤上這事侄柔。” “怎么了占调?”我有些...
    開封第一講書人閱讀 164,491評論 0 354
  • 文/不壞的土叔 我叫張陵暂题,是天一觀的道長。 經(jīng)常有香客問我究珊,道長薪者,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,636評論 1 293
  • 正文 為了忘掉前任剿涮,我火速辦了婚禮言津,結(jié)果婚禮上攻人,老公的妹妹穿的比我還像新娘。我一直安慰自己悬槽,他們只是感情好怀吻,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,676評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著初婆,像睡著了一般蓬坡。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上烟逊,一...
    開封第一講書人閱讀 51,541評論 1 305
  • 那天渣窜,我揣著相機(jī)與錄音,去河邊找鬼宪躯。 笑死乔宿,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的访雪。 我是一名探鬼主播详瑞,決...
    沈念sama閱讀 40,292評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼臣缀!你這毒婦竟也來了坝橡?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,211評論 0 276
  • 序言:老撾萬榮一對情侶失蹤精置,失蹤者是張志新(化名)和其女友劉穎计寇,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體脂倦,經(jīng)...
    沈念sama閱讀 45,655評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡番宁,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,846評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了赖阻。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蝶押。...
    茶點(diǎn)故事閱讀 39,965評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖火欧,靈堂內(nèi)的尸體忽然破棺而出棋电,到底是詐尸還是另有隱情,我是刑警寧澤苇侵,帶...
    沈念sama閱讀 35,684評論 5 347
  • 正文 年R本政府宣布赶盔,位于F島的核電站,受9級特大地震影響榆浓,放射性物質(zhì)發(fā)生泄漏于未。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,295評論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望沉眶。 院中可真熱鬧,春花似錦杉适、人聲如沸谎倔。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,894評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽片习。三九已至,卻和暖如春蹬叭,著一層夾襖步出監(jiān)牢的瞬間藕咏,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,012評論 1 269
  • 我被黑心中介騙來泰國打工秽五, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留孽查,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,126評論 3 370
  • 正文 我出身青樓坦喘,卻偏偏與公主長得像盲再,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子瓣铣,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,914評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法答朋,類相關(guān)的語法,內(nèi)部類的語法棠笑,繼承相關(guān)的語法梦碗,異常的語法,線程的語...
    子非魚_t_閱讀 31,631評論 18 399
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理蓖救,服務(wù)發(fā)現(xiàn)洪规,斷路器,智...
    卡卡羅2017閱讀 134,657評論 18 139
  • java筆記第一天 == 和 equals ==比較的比較的是兩個(gè)變量的值是否相等藻糖,對于引用型變量表示的是兩個(gè)變量...
    jmychou閱讀 1,497評論 0 3
  • (一)Java部分 1淹冰、列舉出JAVA中6個(gè)比較常用的包【天威誠信面試題】 【參考答案】 java.lang;ja...
    獨(dú)云閱讀 7,104評論 0 62
  • 幼兒期的寶貝好動可愛,好像有用不完的精力巨柒。對于寶貝的每一天吃得好才能讓寶媽寶爸放心樱拴。下面讓我們來一同聊聊幼兒的喂養(yǎng)...
    大桃子的家閱讀 395評論 0 0