1. 程式人生 > >java中“類”和“對象”到底有什麽聯系

java中“類”和“對象”到底有什麽聯系

ont 窗體 dex 取出 float window對象 str 協同工作 是你

4.object和,Class配合工作原理 (視頻下載) (全部書籍) 【新手可忽略不影響繼續學習】 Class是"類"的意思,是抽象的,並沒有具體的說是哪個東西。而object是具體的,實實在在存在的一個東西,一個物體。比如車就是一個類,而不是一個object,因為車這個概念是抽象的,並沒有具體指明是哪輛車。而車牌號為京HT3113的這輛車就是一個object,因為它實實在在的存在。而另外一輛車牌號為京jw2344車是另外一個實實在在的object,這兩個object屬於一類叫"車"。車這一類有別於另外一類:窗體window。window是類而不是object,原因是你並沒有實實在在,具體的指明,@馬克-to-win是哪一個window,而我電腦上,暴風的window或迅雷的window就是兩個具體的實實在在的object。

【新手可忽略不影響繼續學習】 類相對於對象來講是抽象的,但好處是可以總結提取出所有對象的共同性,

比如車這類都是有四個輪子的,而window這類都有寬度,且window這類可以被關閉。這樣屬於window這一類的對象,比如暴風window或迅雷window都有寬度,@馬克-to-win且都可以被關閉。福利來了,"關閉"這行為,所有window對象都有。具有共性的”關閉”行為如果放在類中只需放一份,而放在對象中卻要放n份,我們立刻看出了類和對象協同工作的好處。好,綜上所述,我們給出代碼:

本章源碼
class Window {
int width;
int height;
/*close放在類中只需放一份。省去重復工作, 每個object都可以用, 當調用baoFengObject.close();時, 以下方法被執行,其中width變量,是baoFengObject的屬性,而不是xunLeiObject的屬性。 */
void close() {
System.out.println("kuan" + width + "的window被關閉。");
}
}

public class Test {
public static void main(String[] args) {
/*Window baoFengObject = new Window();和 int a=3如出一轍, int a=3說明a是int這個類型的,而不是float
這個類型的。Window baoFengObject = new Window(); 說明baoFengObject這個對象屬於window這個類, 而不是
車這個類的, 而且int a=3 在內存中分配了a這個空間等於3,而Window baoFengObject = new Window();時
baoFengObject在內存 中初始化了,被分配了空間,其中width初始化成了0 @馬克-to-win*/
Window baoFengObject = new Window();
baoFengObject.width=999;//999代表暴風
baoFengObject.height=999;//999代表暴風
Window xunLeiObject = new Window();
xunLeiObject.width=111;//111代表迅雷
xunLeiObject.height=111;//111代表迅雷
/*有新手怎麽都不明白下面一句的意思?什麽是baoFengObject.close(); ,好,在前面java一章,我們學過方法,method,子函數,這些都是一回事,close()方法,close()子函數總明白吧?這裏baoFengObject.close(),說的就是調用baoFengObject的close()方法*/
baoFengObject.close();
xunLeiObject.close();
}
}

結果是:
kuan999的window被關閉。
kuan111的window被關閉。
詳細請進:http://www.mark-to-win.com/index.html?content=JavaBeginner/javaUrl.html&chapter=JavaBeginner/JavaBeginner2_web.html#ObjectClassDifference

java中“類”和“對象”到底有什麽聯系