Java第二課
標(biāo)識(shí)符 :
????????????? 一切起名字的地方的名字都是標(biāo)識(shí)符
?????????????
?????? 標(biāo)識(shí)符的命名規(guī)則 :
????????????? 1.組成 : 大小寫英文字符,下劃線_,美元符號$,數(shù)字任意組合而成,數(shù)字不能開頭
????????????? 2.關(guān)鍵字與保留字不能作為標(biāo)識(shí)符使用
???????????????????? 關(guān)鍵字 : 有一些單詞已經(jīng)被java語法使用
??????????????????????????? 關(guān)鍵字全部小寫
???????????????????? 保留字 : 現(xiàn)在還沒有被java語法占用,但是將來有可能會(huì)被使用
????????????? 3.嚴(yán)格區(qū)分大小寫
?????? 標(biāo)識(shí)符的命名規(guī)范 :
????????????? 1.見名之意
????????????? 2.駝峰命名原則
???????????????????? 包名 : 全部小寫,多層級之間通過.連接???? you.ji.xian
???????????????????? 類名|接口名 : 每個(gè)單詞首字母大寫???????? YouJiXian
???????????????????? 變量名|方法名 : 第一個(gè)單詞全部小寫,第二個(gè)單詞開始每個(gè)單詞首字母大寫?? youJiXian
???????????????????? 常量名 : 全部大寫,每個(gè)單詞之間使用_連接? YOU_JI_XIAN
變量 : 可變的量
?????? 在程序執(zhí)行過程中,其值允許發(fā)生改變
?????? 在內(nèi)存中定義一塊內(nèi)存空間,用來存放指定類型的數(shù)據(jù)
?????? 變量相當(dāng)于造盒子
????????????? 這個(gè)盒子是變量
????????????? 盒子的名字是變量名
????????????? 盒子中的數(shù)據(jù)是變量的值
??????
?????? 變量的數(shù)據(jù)類型 : 不同類型的數(shù)據(jù)所占空間大小不同
????????????? 整數(shù) : int?? 小數(shù) : double??? 字符型 '' : char?? 布爾型 : boolean?? 字符串 "": String
?????????????
?????? 變量的作用 :
????????????? 存儲(chǔ)單個(gè)數(shù)據(jù)
?????????????
?????? 語法 :
????????????? 聲明的同時(shí)賦值 :
???????????????????? 數(shù)據(jù)類型 變量名 = 賦值;
????????????????????
?????????????
????????????? 先聲明后賦值 :
???????????????????? 數(shù)據(jù)類型 變量名;
???????????????????? 變量名 = 賦值;
?????????????
????????????? 同時(shí)聲明多個(gè)變量,要求類型一致
????????????? 同時(shí)聲明且賦值多個(gè)變量,要求類型一致
??????
?????? 變量需要注意的點(diǎn) :
????????????? 數(shù)據(jù)類型
????????????? 變量名 : 標(biāo)識(shí)符
????????????? 變量的值 : 要求與類型保持一致
????????????? 作用域 **** : {}
???????????????????? 從變量的聲明開始,到包裹這個(gè)變量的離它最近的}結(jié)束
????????????????????
?????? 分類 :
????????????? 局部變量 :
???????????????????? 在方法中|語句塊{}中定義的變量
???????????????????? 只聲明不賦值沒有默認(rèn)值
????????????? 成員變量 :
???????????????????? 在類中方法外的位置定義的變量
???????????????????? 只聲明不賦值存在默認(rèn)值,整數(shù):0? 小數(shù):0.0? 字符:空字符? 布爾:false? 引用 :null
??????
?????? 注意 : =是自右向左運(yùn)算的符號
?
常量 :
????????????? 在java程序執(zhí)行期間,其值不可以發(fā)生改變的量
?????????????
?????? 分類 :
????????????? 字面值常量 :
???????????????????? 整數(shù)常量 : 100? -5?? 0 ...
???????????????????? 小數(shù)常量 : 1.1? -5.5? ...
???????????????????? 字符常量 : ' '?? 'a'??? 'A'?? '中' ...
???????????????????? 布爾常量 : true?? false
???????????????????? 字符串常量 : ""? "?? "??? "abc"? "中國"? ...
???????????????????? 空常量 : null
????????????? 自定義常量 : final? 被final修飾的變量為常量
?
?
數(shù)據(jù)類型 :? *****
????????????? 基本數(shù)據(jù)類型 : 四類八種
????????????? 引用數(shù)據(jù)類型 : 類? 接口? 數(shù)組 []
?????????????
?????? 基本數(shù)據(jù)類型 : 規(guī)定存儲(chǔ)數(shù)據(jù)的大小
????????????? 整型 : 整數(shù)
???????????????????? 字節(jié)型???? byte???????? ?1byte = 8bit ?? ? [-128,127]
???????????????????? 短整型??? ?? short ?2byte = 16bit???????????? [-32768,32767]
???????????????????? 整型?????? ?? int??????????? ?4byte = 32bit???????????? ?+-21億
???????????????????? 長整型??? ?? long???????? ?8byte = 64bit???????????? 非常大
???????????????????? 在java中整數(shù)的字面值常量默認(rèn)為int類型
???????????????????? 在為long類型數(shù)據(jù)賦值的時(shí)候,需要在數(shù)據(jù)的后面添加L(推薦)|l
????????????????????
????????????? 浮點(diǎn)型 : 小數(shù)??
???????????????????? 單精度 ? ????? float??????? 4個(gè)字節(jié)?????????????? 精確7位
???????????????????? 雙精度?????????? double?????????? 8個(gè)字節(jié)?????????????? 精確15位
???????????????????? 在java中小數(shù)的字面常量值默認(rèn)為double類型
???????????????????? 在為float類型賦值的時(shí)候,需要在數(shù)據(jù)的后面添加F|f
???????????????????? 在java浮點(diǎn)類型的數(shù)據(jù)不要大量的進(jìn)行運(yùn)算,可能會(huì)造成數(shù)據(jù)的不精確
????????????????????
????????????? 字符型 :
???????????????????? 字符型?? char????? 2byte
???????????????????? java中字符型數(shù)據(jù)的表現(xiàn)方式 :
????????????????????????????????????????????????????????????????????? ''包裹一個(gè)字符
????????????????????????????????????????????????????????????????????? 0~65535十進(jìn)制整數(shù)
????????????? 布爾型
???????????????????? 布爾型? boolean? 1字節(jié)?? 1位有效
????????????????????
?????????????
?????? 計(jì)算機(jī)基本存儲(chǔ)單位 : 字節(jié)??? bit比???? 特位 --> 1byte字節(jié) = 8bit位
轉(zhuǎn)義字符
????????????? 因?yàn)橛幸恍┳址哂刑厥獾暮x,但是不想要字符表示特殊含義,只想要表示字符本身,可以通過轉(zhuǎn)義字符實(shí)現(xiàn)
?????????????
????????????? 轉(zhuǎn)義字符從\開始
????????????? \'
????????????? \"
????????????? \\
?????????????
????????????? \t : 制表符
???????????????????? 一個(gè)制表符位默認(rèn)8個(gè)空格,如果制表符位前面出現(xiàn)其他字符,檢測前面的字符是否滿制表符位的整數(shù)倍,如果不滿補(bǔ)齊,如果滿就重新開辟
????????????? \n : 讓光標(biāo)從這一行的行尾換到下一行的行首
????????????? \b : 退格 光標(biāo)回退一格
?
數(shù)據(jù)類型轉(zhuǎn)換
?????? 標(biāo)準(zhǔn)賦值 : 對應(yīng)類型的數(shù)據(jù)賦值給對應(yīng)類型的變量
??????
?????? 當(dāng)前后類型不一致涉及到類型轉(zhuǎn)換問題
?????? 1.boolean類型不參與類型轉(zhuǎn)換
?????? 2.自動(dòng)類型提升 : 小--->大
?????? ? 強(qiáng)制類型轉(zhuǎn)換 : 大===>小
????????????? 小范圍類型 變量 = (小范圍類型)大范圍類型的數(shù)據(jù);
?????? ?
?????? 注意 : 當(dāng)表達(dá)式中存在多種數(shù)據(jù)類型參與運(yùn)算,最終結(jié)果的類型為參與運(yùn)算的最大數(shù)據(jù)類型
??????????????????????????? 參與運(yùn)算的最大類型<int類型,最終會(huì)提升成為int類型
????????????? ?? 當(dāng)想要為byte,short,char賦值的時(shí)候,將int類型的常量只要在其范圍內(nèi)就能成功賦值
????????????? ?? 當(dāng)字符類型參與運(yùn)算,將字符轉(zhuǎn)為十進(jìn)制整數(shù)再運(yùn)算