三大特點(diǎn):封裝 ?繼承 ?多態(tài)
優(yōu)點(diǎn):一次編譯杜秸,到處運(yùn)行(跨平臺(tái))柑潦;多線程绊含;支持動(dòng)態(tài)更新
虛擬機(jī)(JVM):是用軟件來(lái)模擬一個(gè)虛擬的環(huán)境必尼。將java編寫(xiě)的源程序經(jīng)過(guò)編譯后生成的字節(jié)碼,jvm提供一個(gè)解釋運(yùn)行java字節(jié)碼文件的環(huán)境抒倚,只要在不同的操作系統(tǒng)上安裝jvm后褐着,就能對(duì)同一個(gè)java程序進(jìn)行解釋運(yùn)行。
java中是由虛擬機(jī)通過(guò)垃圾回收器線程自動(dòng)完成托呕;只有當(dāng)對(duì)象不再被使用時(shí)含蓉,它的內(nèi)存才可能被回收频敛,如果虛擬機(jī)認(rèn)為系統(tǒng)不需要額外的內(nèi)存,機(jī)對(duì)象不再使用馅扣,內(nèi)存也不會(huì)回收斟赚;j虛擬機(jī)為java程序提供運(yùn)行時(shí)的環(huán)境,其中一項(xiàng)重要的任務(wù)就是管理類(lèi)的加載差油、連接和初始化拗军。
java八種基本數(shù)據(jù)類(lèi)型:byte char short int float double long boolean
局部變量和成員變量 ? 成員變量:位于堆空間,在類(lèi)中聲明蓄喇,作用于整個(gè)類(lèi)发侵,生命周期整個(gè)類(lèi)都可以被類(lèi)里面的方法應(yīng)用,可以不初始化公罕,本身有默認(rèn)值(int:0 ? Boolean:false ?double:0.0 ?string:null);局部變量:位于椧空間楼眷,在一個(gè)方法的內(nèi)部或者方法的一個(gè)代碼塊內(nèi)部聲明,只作用于聲明的方法或者代碼塊熊尉。
java中子類(lèi)繼承父類(lèi)程序各個(gè)成員的執(zhí)行順序是:父類(lèi)靜態(tài)代碼塊-->子類(lèi)靜態(tài)代碼塊-->主方法(執(zhí)行那個(gè)程序就執(zhí)行那個(gè)程序的主方法)-->父類(lèi)的非靜態(tài)代碼塊-->父類(lèi)的無(wú)參構(gòu)造函數(shù)-->子類(lèi)的非靜態(tài)代碼塊-->子類(lèi)的無(wú)參構(gòu)造函數(shù)(若實(shí)際子類(lèi)執(zhí)行的是有參構(gòu)造函數(shù)罐柳,則不執(zhí)行無(wú)參構(gòu)造函數(shù))-->成員函數(shù)(制定執(zhí)行哪個(gè)函數(shù)就執(zhí)行哪個(gè)函數(shù),若是重寫(xiě)了父類(lèi)的成員函數(shù)狰住,則只執(zhí)行子類(lèi)的成員函數(shù))?