008天
行百里者半九十,想要在一個行業(yè)里成為頂尖人才肪获,一定滿足一萬小時(shí)定律寝凌,要想學(xué)好JAVA,需要持之以恒不斷地努力
近期發(fā)現(xiàn)的迷惑問題,已解決,每天都要勤思考,善于詢問,解決問題!!!!
Static關(guān)鍵字_內(nèi)存分析靜態(tài)變量和靜態(tài)方法
Static修飾變量稱之為什么?static修飾方法稱之為什么?
靜態(tài)成員變量孝赫,也稱為類變量较木。 類變量的生命周期和類相同,在整個應(yīng)用程序執(zhí)行期間都有效青柄。static修飾方法稱之為靜態(tài)方法.
被static修飾的變量和方法從屬于誰?沒被static修飾的變量和方法從屬于誰?
從屬于類,沒有被static修飾的變量和方法屬于對象.
在同一個類中,在非靜態(tài)方法中,如何調(diào)用本類的靜態(tài)方法和靜態(tài)變量?
在同一個類中,在靜態(tài)方法中,如何調(diào)用本類的靜態(tài)方法和靜態(tài)變量?
在同一個類中,在靜態(tài)方法中,如何調(diào)用本類的非靜態(tài)方法和非靜態(tài)變量?
在不同類中,A類的方法如何調(diào)用B類的非靜態(tài)方法或者非靜態(tài)變量?
在不同類中,A類的方法如何調(diào)用B類的靜態(tài)方法或者靜態(tài)變量?
靜態(tài)初始化塊_繼承數(shù)的追溯
靜態(tài)初始化塊的作用是什么?什么時(shí)候執(zhí)行靜態(tài)初始化塊?
靜態(tài)初始化塊伐债,用于類的初始化操作!在靜態(tài)初始化塊中不能直接訪問非static成員,當(dāng)開始加載時(shí),與之同時(shí)開始加載.
Java的參數(shù)傳值機(jī)制_值傳遞
寫代碼解釋為什么說java中參數(shù)傳遞是值傳遞
基本數(shù)據(jù)類型傳遞和引用數(shù)據(jù)傳遞一樣么?
不一樣,基本數(shù)據(jù)類型傳遞是值傳遞,引用數(shù)據(jù)類型是內(nèi)存地址傳遞.
Java包機(jī)制_package的使用_jdk提供的常見包的作用
Java中Package的作用是什么?
便于管理類文件
Jdk有哪些常見包,分別什么作用?
Import詳解_靜態(tài)導(dǎo)入詳解
什么情況下需要導(dǎo)包?
在需要其他包的類時(shí),不然就需要書寫類的完整包名和類名。import后致开,便于編寫代碼峰锁,提高可維護(hù)性。
怎么導(dǎo)入一個包下的所有類?java默認(rèn)導(dǎo)入了什么包?
import java.util.*;//導(dǎo)入該包下所有的類双戳。會降低編譯速度虹蒋,但不會降低運(yùn)行速度。
默認(rèn)導(dǎo)入java.lang包,這是java的核心包,可以直接調(diào)用
如果需要使用不同包下的同名類怎么辦?
在使用時(shí)加上類的包名就可以了
什么是靜態(tài)導(dǎo)入?
其作用是用于導(dǎo)入指定類的靜態(tài)屬性飒货,這樣我們可以直接使用靜態(tài)屬性魄衅。
面向?qū)ο笕筇卣鱛繼承
用你的理解闡述一下什么是繼承
子類繼承父類的屬性和方法,比如兒子繼承父親的財(cái)產(chǎn),但是不能繼承父親私有的方法和屬性,比如兒子不能繼承父親的經(jīng)驗(yàn).
繼承一個類,使用什么關(guān)鍵字?一個類能繼承多個類么?
extends,不能,java中一個類只能繼承一個父類
如果A繼承B ,B繼承C,那么A能獲得B和C的所有屬性和方法么?
可以的,但是無法繼承私有屬性和方法
繼承的好處是什么?
提高代碼重用性,避免大量的重復(fù)代碼出現(xiàn)
InstancOf關(guān)鍵字的作用是什么? instanceOf的返回值是什么?
比較左邊的的對象是否是右面類或子類所創(chuàng)建對象的,返回值是Boolean類型,即true和flase.
子類對象 instanceOf? 父類,返回值是什么?
返回ture
繼承_方法的重寫override_返回值類型問題
為什么需要重寫?
重寫是為了滿足子類的需要
構(gòu)成重寫的要素是什么?
? ? 1.“==”: 方法名、形參列表相同塘辅。
? ? 2.“≤”:返回值類型和聲明異常類型晃虫,子類小于等于父類。
? ? 3.“≥”: 訪問權(quán)限扣墩,子類大于等于父類哲银。
繼承_object類的用法_重寫toString方法
什么是object類?
object類是所有類的父類,所有類都默認(rèn)繼承object類
任何一個類都可以使用object類的所有方法和屬性,這句話對么?
對的
打印一個對象,其實(shí)是在調(diào)用這個對象的什么方法?打印出來的是什么?
調(diào)用該對象的toString()方法,默認(rèn)會返回“類名+@+16進(jìn)制的hashcode”
繼承_equals方法的重寫_閱讀object和String源碼
== 操作符的作用是什么?
代表比較雙方是否相同扛吞。如果是基本類型則表示值相等,如果是引用類型則表示地址相等即是同一個對象荆责。
Object類的Equals方法的作用是什么?
Object 的 equals 方法默認(rèn)就是比較兩個對象的hashcode喻粹,是同一個對象的引用時(shí)返回 true 否則返回 false。但是草巡,我們可以根據(jù)我們自己的要求重寫equals方法。
String類中重寫了equals方法了么?為什么?
string類型酥,它覆蓋了Object的equals()方法山憨。因?yàn)镺bject的equals()的實(shí)現(xiàn)是比較引用地址。
而string是字符串變量弥喉,比較的話需要比較每一個字符郁竟,當(dāng)然得覆蓋Object的equals()來達(dá)到要求了。
繼承_super 父類對象引用_繼承樹追溯問題
Super關(guān)鍵字的作用是什么?
? super是直接父類對象的引用由境∨锬叮可以通過super來訪問父類中被子類覆蓋的方法或?qū)傩浴?/p>
實(shí)例化子類對象之前必先實(shí)例化其父類對象,這句話對么?為什么?
對的,因?yàn)闃?gòu)造方法第一句總是:super(…)來調(diào)用父類對應(yīng)的構(gòu)造方法。所以虏杰,流程就是:先向上追溯到Object讥蟆,然后再依次向下執(zhí)行類的初始化塊和構(gòu)造方法,直到當(dāng)前子類為止纺阔。