一? 數(shù)據(jù)類型
1.內(nèi)置數(shù)據(jù)類型
2.引用對(duì)象
(1)接口,數(shù)組,類,字符串等都是引用類型
(2)所有引用類型的默認(rèn)值都是null
(3)引用類型指向一個(gè)對(duì)象尖坤,指向?qū)ο蟮淖兞渴且米兞看成印_@些變量在聲明時(shí)被指定為一個(gè)特定的類型
? ? ? ? ?例:Site site = new Site("Runoob")
3.常量
? ?在Java中使用 final 關(guān)鍵字來(lái)修飾常量 常量在程序運(yùn)行時(shí)是不能被修改的
4.自動(dòng)類型轉(zhuǎn)換
規(guī)則? :??
?1.不能對(duì)boolean類型進(jìn)行類型轉(zhuǎn)換
?2.不能把對(duì)象類型轉(zhuǎn)換成不相關(guān)類的對(duì)象
3.把容量大的類型轉(zhuǎn)化成容量小的類型時(shí) 需要使用強(qiáng)制轉(zhuǎn)換
4.轉(zhuǎn)換過程中可能會(huì)導(dǎo)致溢出或者精度損失
5.強(qiáng)制類型轉(zhuǎn)化
? ? ?條件是轉(zhuǎn)換的數(shù)據(jù)類型必須是兼容
6.關(guān)于String
1.String? str1="aa";String str2=new String("aa") 兩種方法的內(nèi)存示例圖:
?str1首先去方法區(qū)中的常量池中檢查是否有常量aa,如果有直接指向,如果沒有則先創(chuàng)建常量并指向,通過new創(chuàng)建 出來(lái)的屈张,會(huì)向堆中申請(qǐng)內(nèi)存养盗,來(lái)存儲(chǔ)aa對(duì)象,將字面量存放在方法區(qū)中
?字符串相加的時(shí)候届腐,如果相加的都是靜態(tài)字符串铁坎,那么跟直接賦值相同,會(huì)先檢查字符串常量池中字符串是否存在,如 果經(jīng)存在,就直接指向犁苏,如果不存在硬萍,就將字符串添加進(jìn)常量池并且指向【Strings6="Hello"+"World"跟String? s1="HelloWorld"實(shí)質(zhì)上是相同的,String s6="Hello"+"World"在編譯階段就會(huì)被處理成String s6="HelloWorld"】围详,所以 輸出語(yǔ)句3輸出為true朴乖;如果相加時(shí)包含了變量祖屏,如String s7=s3 + s4中包含了s3,s4兩個(gè)變量买羞,那么就相當(dāng)于通過new 關(guān)鍵字來(lái)創(chuàng)建袁勺,因此輸出語(yǔ)句4輸出為false