java是根據面向對象編程,因此有類和對象的概念,類分為普通類與抽象類。
一。定義類
類由N個 構造器 成員變量 方法組成,可以不定義,也可以根據語法定義N個。
[修飾符] class 類名{
構造器*N個
成員變量*N個
方法*N個
}
1.類的修飾符只能是public final abstract 三種之一,或者不修飾 ,類名一般大寫開頭,駝峰命名
(一)。成員變量的定義
[修飾符] 數據類型 變量名 ;
[修飾符] 數據類型 變量名 = 默認值;
1.修飾符: 可以不寫(默認) 但是只用public private protected 之一修飾 或者 組合 static final 之一 共同經行修飾
(二)。方法的定義
[修飾符] 返回類型 方法名( 形參列表 ){
//執行代碼,方法體
}
1.修飾符。可以不寫(默認) 但是只用public private protected 之一修飾 或者 組合 abstract final 之一 共同經行修飾 或者再加static 組合修飾
抽象類的抽象方法不能使用static修飾
(三)。構造器定義
[修飾符] 類名 ( 形參列表 ){
//構造器執行體
}
1.修飾符 可以不寫(默認) 但是只能用 public private protected之一修飾
(四)。關於 static
簡單的說 static 修飾的方法 或者 成員變量 是屬於這個類的,該類或該類下的對象都可以進行使用 ;
static修飾符其實就是用來區別 方法或者變量是類的 還是對象的。(目前所學總結,可能有所變化)
二 對象,引用,指針
1.java創建一個對象 如Object obj=new Object();
這段代碼實際上產生了2個東西 一個obj變量 一個Object對象
而且把obj對象指向Object對象的內存地址
如果再把這個Object'對象賦值給其他變量,java不是重新生成內存塊,而是直接把Object的地址引向改變量
所以無論把Object賦值給多少變量,都只會把地址引向變量。
一個變量如果把Object的某個值改變,那么指向該對象的所有變量,使用時都會發生改變,因為都是指向同一個地址