2012年2月10日

物件導向 by Aki

物件導向 by Aki

物件?

物件其實是一種概念,我們來想想一台車有甚麼,最簡單的一台車有車牌所以我們寫下

public class Car {

String id; //車牌

}

然後一台車總會走吧!於是我再多寫一個方法

public class Car {

String id; //車牌

public void go(){

System.out.println("GO 開車");

}

}

這是一個很簡單的class裡面只有一個變數id和一個go()方法但是足以解釋物件的本質

一個class必須要有屬性以及方法

public class Car {

String id; //車牌 (屬性)

public void go(){// (方法)

System.out.println("GO 開車");

}

}

講道這邊我必須說這是一個class(類別)而不是一個object(物件)

那麼我們該怎麼把class Car變成物件?

//code-MAIN

public class test {

public static void main(String[] args) {

Car car = new Car();

}

}

答案就是

Car car = new Car();

雖這個答案是對的 但是這個答案其實不標準

Car car ;

car = new Car();

在這之前我們應該知道一個變數的宣告是這樣的

//型態 名稱 = 值 ;

int i = 0;

意思是說我們宣告了一個type為int的記憶體空間

clip_image002

然後我們在裡面存進0這個值

clip_image004

也就是說 = (等號) 也就是那個箭頭

回到剛剛的

Car car ;

car = new Car();

也就是說第二行的 car = new Car(); 就是下圖

clip_image006

這邊可能有個觀念可能會錯亂

以前我們看到 A = B 會說B存到A

但是有另一個解釋就是A參考至B

new Car();

其實這就是把Car()這個class實體化成一個物件

然而這個剛剛從class實體化成的object需要一個名稱去參考就是car

car = new Car();

沒有留言: