抽象的目的是產(chǎn)生類(lèi),而類(lèi)的目的是創(chuàng)建具有屬性和行為的對(duì)象。對(duì)象不僅可以操作自己的變量改變狀態(tài),而且能調(diào)用類(lèi)中的方法產(chǎn)生一定的行為。
通過(guò)使用運(yùn)算符“.” (點(diǎn)運(yùn)算符也稱(chēng)引用運(yùn)算符或訪問(wèn)運(yùn)算符),對(duì)象可以實(shí)現(xiàn)對(duì)自己的變量的訪問(wèn)和方法的調(diào)用。
對(duì)象創(chuàng)建之后,就有了自己的變量,即對(duì)象的實(shí)體。對(duì)象通過(guò)使用點(diǎn)運(yùn)算符“.”訪問(wèn)自己的變量,訪問(wèn)格式:
對(duì)象.變量;
對(duì)象創(chuàng)建之后,可以使用點(diǎn)運(yùn)算符“.”調(diào)用創(chuàng)建它的類(lèi)中的方法,從而產(chǎn)生一定的行為,調(diào)用格式:
對(duì)象.方法;
當(dāng)對(duì)象調(diào)用方法時(shí),方法中出現(xiàn)的成員變量就是指分配給該對(duì)象的變量。
例如:
class XiyoujiRenwu { float height,weight; String head; void speak (String s) { head = "歪頭"; System.out.println(s); } } public class Main { public static void main(String[] args) { XiyoujiRenwu zhubajie,sunwukong; //聲明對(duì)象 zhubajie = new XiyoujiRenwu(); //為對(duì)象分配變量 sunwukong = new XiyoujiRenwu(); zhubajie.height = 1.80f; //對(duì)象給自己的變量賦值 zhubajie.head = "大頭"; sunwukong.height = 1.60f; //對(duì)象給自己的變量賦值 sunwukong.weight = 1000f; sunwukong.head = "長(zhǎng)發(fā)飄飄"; System.out.println("zhubajie的身高:"+zhubajie.height); System.out.println("zhubajie的頭:"+zhubajie.head); System.out.println("sunwukong的重量:"+sunwukong.weight); System.out.println("sunwukong的頭:"+sunwukong.head); zhubajie.speak("俺老豬想娶媳婦"); //對(duì)象調(diào)用方法 System.out.print1n("zhubajie現(xiàn)在的頭:"+zhubajie.head); sunwukong.speak("俺老孫想騙八戒背我"); //對(duì)象調(diào)用方法 System.out.println("sunwukong現(xiàn)在的頭:"+sunwukong.head); } }
運(yùn)行結(jié)果如下:
zhubajie的身高:1.8 zhubajie的頭: 大頭 sunwukong的重量:1000.0 sunwukong的頭: 長(zhǎng)發(fā)飄飄 俺老豬想娶媳婦 zhubajie現(xiàn)在的頭: 歪頭 俺老孫想騙八戒背我 sunwukong現(xiàn)在的頭: 歪頭
C語(yǔ)言網(wǎng)提供由在職研發(fā)工程師或ACM藍(lán)橋杯競(jìng)賽優(yōu)秀選手錄制的視頻教程,并配有習(xí)題和答疑,點(diǎn)擊了解:
一點(diǎn)編程也不會(huì)寫(xiě)的:零基礎(chǔ)C語(yǔ)言學(xué)練課程
解決困擾你多年的C語(yǔ)言疑難雜癥特性的C語(yǔ)言進(jìn)階課程
從零到寫(xiě)出一個(gè)爬蟲(chóng)的Python編程課程
只會(huì)語(yǔ)法寫(xiě)不出代碼?手把手帶你寫(xiě)100個(gè)編程真題的編程百練課程
信息學(xué)奧賽或C++選手的 必學(xué)C++課程
藍(lán)橋杯ACM、信息學(xué)奧賽的必學(xué)課程:算法競(jìng)賽課入門(mén)課程
手把手講解近五年真題的藍(lán)橋杯輔導(dǎo)課程