java如何創(chuàng)建一個(gè)類的對(duì)象 Java中實(shí)例化,初始化和創(chuàng)建對(duì)象有什么區(qū)別?
Java中實(shí)例化,初始化和創(chuàng)建對(duì)象有什么區(qū)別?這個(gè)問題,爪哇老鳥應(yīng)該知道!運(yùn)行:等待新的、反射類、初始化子類等。開始初始化(為變量指定默認(rèn)值等)!作為J實(shí)例化對(duì)象,等待使用!在此過程中,對(duì)象引用、對(duì)象
Java中實(shí)例化,初始化和創(chuàng)建對(duì)象有什么區(qū)別?
這個(gè)問題,爪哇老鳥應(yīng)該知道
!運(yùn)行:
等待新的、反射類、初始化子類等。開始初始化(為變量指定默認(rèn)值等)!作為J實(shí)例化對(duì)象,等待使用
!在此過程中,對(duì)象引用、對(duì)象本身和靜態(tài)變量將放置在堆棧(虛擬堆棧、本地方法堆棧等)、堆、方法區(qū)域等上
!深入了解JVM這個(gè)寫的不錯(cuò),推薦看!可以說這些事情都是面試時(shí)必須問的
java中new出來一個(gè)對(duì)象和定義一個(gè)對(duì)象賦值為空有什么不同?
新建對(duì)象,例如
someclass SC=New someclass()
此時(shí),通過指向New someclass()創(chuàng)建的內(nèi)存空間已分配給SC。也就是說,對(duì)象SC已實(shí)例化。
如果someclass SC=null,則SC對(duì)象不會(huì)實(shí)例化,它是一個(gè)空對(duì)象,不能指向任何內(nèi)存空間。
java用類創(chuàng)建一個(gè)對(duì)象什么時(shí)候用new什么時(shí)候不用?
看樓上的答案,專門寫代碼測(cè)試,結(jié)果發(fā)現(xiàn)execsql似乎不是靜態(tài)方法。
Java對(duì)象在堆上分配了內(nèi)存,因此請(qǐng)使用new。Sqlitedatabase只聲明一個(gè)對(duì)象引用而不進(jìn)行初始化。打電話給數(shù)據(jù)庫(kù).execSQL(SQL)應(yīng)報(bào)告錯(cuò)誤。如果初始化為sqlitedatabase=null,則直接在下面調(diào)用時(shí)將出現(xiàn)空指針異常。因?yàn)檫@個(gè)引用沒有指向一個(gè)對(duì)象。靜態(tài)方法和靜態(tài)成員變量確實(shí)不使用實(shí)例化對(duì)象,例如整數(shù).toString(10) 可以直接使用。