45.定義一個類名為”MyClass.java”的類,並且該類可被一個工程中的所有類訪問,那麼該類的正確聲明為()(選擇兩項)
46.面向對象的特徵有哪些方面?請用生活中的例子來描述。
答:面向對象的三大特徵:封裝、繼承、多態。
舉例:(比如設計一個遊戲)我現在創建了一個對象,名叫戰士。
戰士的屬性是—性別,年齡,職業,等級,戰鬥力,血量。
它的方法—戰鬥,逃跑,吃飯,睡覺,死。
後來,我又建了一個對象,叫人。
屬性:性別,年齡,職業,等級,血量
方法:逃跑,吃飯,睡覺,死。
我讓人,成為戰士的父類,戰士可以直接繼承人的屬性和方法。
戰士修改成—
屬性:戰鬥力。
方法:戰鬥。
看上去戰士的資料變少了,實際上沒有,我們仍然可以調用方法—戰士.死。
而且我們還可以重載戰士.死的方法,簡稱重載死法。
我還建了一個對象—法師,父類也是人。
屬性:法力值
方法:施法,泡妞。
你看,用了繼承,創建對象變得更方便了。
再後來,我又建立了一個對象,叫怪物。
屬性:等級,戰力,血量。
方法:戰鬥,死。
建了個對象,叫白兔怪,父類怪物,可繼承怪物所有的屬性和方法。
屬性:毛色。
方法:賣萌,吃胡蘿蔔。
47.說明內存洩漏和內存溢出的區別和聯繫,結合項目經驗描述Java程序中如何檢測?如何解決?
答:
內存溢出 out of memory,是指程序在申請內存時,沒有足夠的內存空間供其使用,出現out of memory;比如申請了一個integer,但給它存了long才能存下的數,那就是內存溢出。
內存洩露 memory leak,是指程序在申請內存後,無法釋放已申請的內存空間,一次內存洩露危害可以忽略,但內存洩露堆積後果很嚴重,無論多少內存,遲早會被佔光。
memory leak會最終會導致out of memory!
閱讀更多 Java淺析 的文章