標籤:style blog http java color 使用
3.2 類與對象的關係
使用電腦語言就是不斷的在描述現實生活中的事物。
java中描述事物通過類的形式體現,類是具體事物的抽象,概念上的定義。
對象即是該類事物實實在在存在的個體 。
3.2.1 類與對象( 圖例)
3.2.2 類的定義
生活中描述事物無非就是描述事物的屬性和行為。
? 如:人有身高,體重等屬性,有說話,打球等行為。
Java中用類class來描述事物也是如此
? 屬性:對應類中的成員變數。
? 行為:對應類中的成員函數。
定義類其實在定義類中的成員(成員變數和成員函數)。
3.2.3 成員變數和局部變數的區別?
成員變數:
? 成員變數定義在類中,在整個類中都可以被訪問。
? 成員變數隨著對象的建立而建立,存在於對象所在的堆記憶體中。
? 成員變數有預設初始化值。
局部變數:
? 局部變數只定義在局部範圍內,如:函數內,語句內等。
? 局部變數存在於棧記憶體中。
? 作用的範圍結束,變數空間會自動釋放。
? 局部變數沒有預設初始化值。
3.2.4 建立對象,使用對象
class Car//對Car這類事物進行描述{String color = "red";int num = 4;void show(){System.out.println("color="+color+"..num="+num);}}class CarDemo{public static void main(String[] args){Car c = new Car();//建立對象c.color = "black";//對對象的屬性進行修改c.show();//使用對象的功能。}}
3.2.5 對象記憶體結構
Car c1 = new Car();c1.color="blue";
Car c2 = new Car();
3.2.6 匿名對象
匿名對象是對象的簡化形式
匿名對象兩種使用方式
? 當對對象 方法僅進行 一次調用的時
? 匿名對象可以作為實際參數進行傳遞
/*用java語言對現實生活中的事物進行描述。通過類的形式來體現的。怎麼描述呢?對於事物描述通常只關注兩方面。一個是屬性,一個是行為。只要明確該事物的屬性和行為並定義在類中即可。對象:其實就是該類事物實實在在存在的個體。類與對象之間的關係?類:事物的描述。對象:該類事物的執行個體。在java中通過new來建立的。*//*描述小汽車分析:1,屬性。輪胎數。顏色。 2,行為。運行。定義類其實就是在定義類中的成員。成員:成員變數<-->屬性,成員函數<-->行為。成員變數和局部變數的區別:1,成員變數定義在類中,整個類中都可以訪問。局部變數定義在函數,語句,局部代碼塊中,只在所屬的地區有效。2,成員變數存在於堆記憶體的對象中。局部變數存在於棧記憶體的方法中。3,成員變數隨著對象的建立而存在,隨著對象的消失而消失。局部變數隨著所屬地區的執行而存在,隨著所屬地區的結束而釋放。4,成員變數都有預設初始化值。局部變數沒有預設初始化值。 */class Car{int num;String color;void run(){//int num = 10;System.out.println(num+"..."+color);}}class CarDemo{public static void main(String[] args) {//在電腦中建立一個car的執行個體。通過new關鍵字。 //Car c = new Car();// c就是一個類類型的引用變數,指向了該類的對象。//c.num = 4;//c.color = "red";//c.run();//要使用對象中的內容可以通過 對象.成員 的形式來完成調用。//Car c1 = new Car();//c1.num = 4;//c1.color = "red";//Car c2 = new Car();//c2.num = 4;//c2.color = "red";//Car c1 = new Car();//Car c2 = new Car();//show(c1);//show(c2);/*匿名對象。沒有名字的對象 。new Car();//匿名對象。其實就是定義對象的簡寫格式。Car c = new Car();c.run();new Car().run();1,當對象對方法僅進行一次調用的時候,就可以簡化成匿名對象。new Car().num = 5;new Car().color = "green";new Car().run();2,匿名對象可以作為實際參數進行傳遞。*///Car c1 = new Car();//show(c1);show(new Car());}//汽車改裝廠。public static void show(Car c)//類類型的變數一定指向對象。要不就是null。 {c.num = 3;c.color = "black";System.out.println(c.num+"..."+c.color);}}
基礎資料型別 (Elementary Data Type)參數傳遞和引用資料類型參數傳遞
//基礎資料型別 (Elementary Data Type)參數傳遞class Demo {public static void main(String[] args) {int x = 3;show(x);System.out.println("x="+x);}public static void show(int x){x = 4;}}public class Demo { private static int x; public static void main(String[] args) { name(x); System.out.println(x); } public static void name(int x){ x++; } } //引用資料類型參數傳遞class Demo{int x = 3;public static void main(String[] args){Demo d = new Demo();d.x = 9;show(d);System.out.println(d.x);}public static void show(Demo d){d.x = 4;}}