標籤:
一、進入java的世界
1.你要做的事情:
編寫原始碼Party.java -》 編譯:javac Party.java,產生Party.class檔案(eclipse是自動編譯的,.class檔案存放在Path路徑下)-》在某個jvm上執行:java Party
2.一些java基本文法的東西:
(1)java中的Integer和boolean並不相容,所以不能用整數類型作為條件判斷的條件,只能用boolean值。比如下面的寫法就是錯的。
1 int x = 1;2 while(x){3 //4 }
(2)print和println的區別:println會在最後面插入換行。
二、拜訪對象村
(1)類與對象的區別
(2)記憶體回收機制:建立對象時,它被會存放在稱之為堆(heap)的記憶體地區中。java有記憶體回收機制。當它察覺某個對象不會再被用到,就會標記可回收。當記憶體不足時,就會清理。
(3)public、static、final:在任何類中的任何程式都可以存取public static方法。任何變數只要加上public、static和final,都會變成全域可用的常數。
三、認識變數
(1)變數的類型:primitive和對象參考型別。
primitive主要資料類型有8種:boolean、char、byte、short、int、long、float、double。
對象引用變數儲存的是存取對象的方法,所以b=c也只是傳遞的存取方法,讓c也指向b指向的對象。ps:數組也是對象,不管裡面放的是primitive還是對象參考型別。
(2)建立對象的數組時,很容易犯的一個錯誤:
1 Book[] myBooks = new Books[];2 myBooks[0].title = "harry.potter";
然而此時myBook[0]並沒有引用一個對象,可以理解為我們的myBooks引用了一個書架,但是還沒有書讓你來引用呢~
1 Book[] myBooks = new Books[];2 myBooks[0] = new Books();3 myBooks[0].title = "hp";
四、對象的行為
(1)實參與形參(argument and parameter):實參是傳給方法的值,當它傳入方法後就成了形參。
(2)java是通過值傳遞的,也就是拷貝傳遞。
(3)資料隱藏:可通過.符號直接存取執行個體變數如cat.height,這很危險,最好強迫必須通過getter和setter,然後把執行個體變數標記為private。
(4)初始化:數位primitive的預設為0,包括char哦。boolean的預設為false,對象引用則為null。
(5)執行個體變數與局部變數(聲明在方法中的變數)的區別:最重要的一點,局部變數沒有預設值,如果在變數被使用之前沒有初始化,會出現編譯錯誤。
(6)==和equals():當判定兩個primitive主要資料類型是否相等,用==,當判斷兩個引用變數是否引用到堆上同一個對象,用==,當需要知道兩個對象是否真的相等,就要用equals()。
headFirst java學習筆記之一:基礎知識部分(5.7)