《疯狂JAVA讲义》笔记1
目錄
?
垃圾回收機(jī)制
注釋
數(shù)據(jù)類型
運(yùn)算符
垃圾回收機(jī)制
內(nèi)存泄漏:一些分配出去的內(nèi)存得不到及時(shí)回收,就會(huì)使系統(tǒng)運(yùn)行速度下降,甚至導(dǎo)致程序癱瘓,這種現(xiàn)象就是內(nèi)存泄漏。
顯示進(jìn)行垃圾回收的兩個(gè)主要缺點(diǎn):
1)程序忘記及時(shí)回收無用內(nèi)存,從而導(dǎo)致內(nèi)存泄漏,降低系統(tǒng)性能。
2)程序錯(cuò)誤地回收程序核心類庫的內(nèi)存,從而導(dǎo)致系統(tǒng)崩潰。
垃圾回收機(jī)制的優(yōu)點(diǎn):
1)很好的提高編程效率;
2)保護(hù)程序的完整性。
注釋
java的注釋類型有三種:單行注釋;多行注釋;文檔注釋。
文檔注釋:形式為(/**......*/)
文檔注釋是用來生成API文檔的,而API文檔主要用于說明類、方法、成員變量的功能。因此,javadoc工具默認(rèn)只處理以public或protected修飾的類、接口、方法、成員變量、構(gòu)造器和內(nèi)部類之前的文檔注釋。
舉個(gè)栗子:
java所有的關(guān)鍵字都是小寫的。
數(shù)據(jù)類型
java語言支持的類型分為兩類:基本類型和引用類型。
1)基本類型:boolean類型和數(shù)值類型(整數(shù)類型和浮點(diǎn)類型);
2)引用類型(相當(dāng)于指針):類、接口、數(shù)組,還有一種特殊的null類型。
基本數(shù)據(jù)類型中,字符串不是基本數(shù)據(jù)類型,字符串是一個(gè)類,也就是一個(gè)引用數(shù)據(jù)類型。
字符型值有三種表示形式:
1)單個(gè)字符,eg:'A',‘0’;
2)通過轉(zhuǎn)義字符表示特殊字符型值,eg:'\n','\t';
3)直接使用Unicode值表示字符型值,eg:'\u0005'。
?
舉個(gè)栗子:
結(jié)果是:
?
?
值得注意的是:java語言中的單引號(hào)、雙引號(hào)和反斜線都有特殊的用途。如果一個(gè)字符串中包含了這些特殊字符,應(yīng)該使用轉(zhuǎn)義字符的表示形式。eg:“c:\\codes”,只有寫兩個(gè)反斜線,Java才會(huì)把第一個(gè)反斜線當(dāng)成轉(zhuǎn)義字符,后一個(gè)才是真正的反斜線。
?
9.浮點(diǎn)型:
1) 兩種表示形式:十進(jìn)制數(shù)形式和科學(xué)記數(shù)法形式。
2) java語言的浮點(diǎn)類型默認(rèn)為double型,如果希望java把一個(gè)浮點(diǎn)數(shù)當(dāng)作float型,應(yīng)在數(shù)值后面加上f或者F。
3) 三個(gè)特殊的浮點(diǎn)數(shù):正無窮(POSITIVE_INFINITY),負(fù)無窮(NEGATIVE_INFINITY),非數(shù)(NFN),用于表示溢出或者出錯(cuò)。
所有的正無窮大數(shù)值都是相等的,所有的負(fù)無窮大數(shù)值也是相等的。但是非數(shù)與任何數(shù)都不想等,非數(shù)與非數(shù)也不相等。
注意:只有浮點(diǎn)數(shù)除以0才能得到正負(fù)無窮大,因?yàn)閖ava語言會(huì)自動(dòng)把0(整型)當(dāng)成0.0(浮點(diǎn)型)處理。若是一個(gè)整數(shù)除以0會(huì)拋出異常。
舉個(gè)栗子:
?
下面是一個(gè)報(bào)錯(cuò),用以說明浮點(diǎn)數(shù)的正確表示
將改行注釋掉后得到的結(jié)果如下:
最后一個(gè)就是異常的拋出。
4)布爾型數(shù)值只能是 true或者false。
運(yùn)算符
10. 賦值運(yùn)算符支持連續(xù)賦值。eg:a=b=c=5;
11. java支持的位運(yùn)算符有7種:
????1)& 與
????2)| 或
????3)~ 非
????4)^ ?按位異或
????5)<< ?左移
????6)>> ?右移
????7)>>> 無符號(hào)右移
舉個(gè)栗子:
結(jié)果如下:
注意:
這里的移位操作要考慮到數(shù)值類型,如果是int型,32位,大于32的數(shù)字應(yīng)取余。無符號(hào)移位注意高位用原來的符號(hào)位填充。此外,負(fù)數(shù)的操作都是補(bǔ)碼形式。
?
?
不到之處望大家批評(píng)指正!
總結(jié)
以上是生活随笔為你收集整理的《疯狂JAVA讲义》笔记1的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 元学习Meta learning深入理解
- 下一篇: 《疯狂JAVA讲义》3