华南俳烁实业有限公司

考試首頁(yè) | 考試用書 | 培訓(xùn)課程 | 模擬考場(chǎng) | 考試論壇  
全國(guó)  |             |          |          |          |          |         
  當(dāng)前位置:計(jì)算機(jī)等級(jí) > 二級(jí)考試 > Java語(yǔ)言程序設(shè)計(jì) > 考試輔導(dǎo) > 文章內(nèi)容
  

計(jì)算機(jī)二級(jí)JAVA考點(diǎn)解析:Java的類

中華IT學(xué)院   【 】  [ 2017年9月5日 ]

  類是Java語(yǔ)言面向?qū)ο缶幊痰幕驹,它定義了一個(gè)對(duì)象的結(jié)構(gòu)和行為。在Java程序里,你要表達(dá)的概念封裝在某個(gè)類里。一個(gè)類定義了一個(gè)對(duì)象的結(jié)構(gòu)和它的功能接口,功能接口稱為成員函數(shù)。當(dāng)Java程序運(yùn)行時(shí),系統(tǒng)用類的定義創(chuàng)建類的實(shí)例,類的實(shí)例是真正的對(duì)象。類定義的一般形式如下:

  classclassnameextendssuperclassname{typeinstance-variable1;typeinstance-variable2;.................................typeinstance-variableN;typemethodname1(parameter-list){method-body;}typemethodname2(parameter-list){method-body;}....................................................typemethodnameN(parameter-list){method-body;}}

  這里,classname和superclassname是合法的標(biāo)識(shí)符。關(guān)鍵詞extends用來(lái)表明classname是superclassname派生的子類。有一個(gè)類叫做Object,它是所有Java類的根。如果你想定義Object的直接子類,你可以省略extends子句,編譯器會(huì)自動(dòng)包含它。下面是一個(gè)簡(jiǎn)單的類的定義。classUniversity{}

  5.1對(duì)象實(shí)例

  類名可以作為變量的類型來(lái)使用,如果一個(gè)變量的類型是某個(gè)類,那么它將指向這個(gè)類的實(shí)例,稱為對(duì)象實(shí)例。所有對(duì)象實(shí)例和它們的類型(某個(gè)類?copy;的子類的實(shí)例都是相容的。就象可以把byte型的值賦給int型的變量一樣,你可以把Object的子類的任何實(shí)例賦給一個(gè)Object型的變量。一個(gè)實(shí)例是類模板的單獨(dú)的拷貝,帶有自己的稱為實(shí)例變量的數(shù)據(jù)集。每個(gè)實(shí)例也可以作為一個(gè)對(duì)象。當(dāng)你定義一個(gè)變量的類型是某個(gè)類時(shí),它的缺省值是null,null是Object的一個(gè)實(shí)例。對(duì)象null沒(méi)有值,它和整數(shù)0不同。下面這個(gè)例子中,聲明變量u的類型是類University。Universityu;這里,變量u的值是null。

  5.2實(shí)例變量

  Java通過(guò)在類定義的大括號(hào)里聲明變量來(lái)把數(shù)據(jù)封裝在一個(gè)類里。這里的變量稱為實(shí)例變量。下面的例子定義了一個(gè)叫做University的類,它有兩個(gè)實(shí)例變量:name和city。classUniversity{Stringname,city;}

  5.3new操作符

  操作符new用來(lái)生成一個(gè)類的實(shí)例,下面這個(gè)例子生成了類University的一個(gè)實(shí)例,存放在變量u中。

  Universityu=newUniversity();在此例中,變量u指向這個(gè)對(duì)象,但并不真正包含這個(gè)對(duì)象。你可以用多個(gè)變量指向同一個(gè)對(duì)象。下面的例子中,創(chuàng)建了一個(gè)University的對(duì)象,但創(chuàng)建了兩個(gè)指向它的變量。

  Universityu=newUniversity();Universityu2=u;

  對(duì)u2所指向的對(duì)象的任何改動(dòng)都會(huì)對(duì)u所指向的對(duì)象起作用,因?yàn)樗鼈兪峭粋(gè)對(duì)象。對(duì)u和u2的賦值只是把它們指向這個(gè)對(duì)象,既沒(méi)有分配內(nèi)存,也沒(méi)有復(fù)制這個(gè)對(duì)象的任何部分。對(duì)u的再賦值只是簡(jiǎn)單地去掉了u和原來(lái)對(duì)象的聯(lián)系,并不影響對(duì)象本身,下面的例子說(shuō)明了這種情況。

  Universityu=newUniversity();Universityu2=u;u=null;

  盡管u被賦值為null,u2仍指向原來(lái)由操作符new創(chuàng)建的對(duì)象。在前面的例子里,我們生成了一個(gè)對(duì)象并且指向了它兩次。這就允許兩個(gè)變量改變同一個(gè)對(duì)象。創(chuàng)建一個(gè)新的對(duì)象時(shí),可直接對(duì)它的實(shí)例變量賦值。每個(gè)對(duì)象都有它所屬類的實(shí)例變量的拷貝,每個(gè)對(duì)象的實(shí)例變量都是和其他對(duì)象的實(shí)例變量分離的,所以改變一個(gè)對(duì)象的實(shí)例變量不會(huì)影響其他對(duì)象的實(shí)例變量。下面的例子創(chuàng)建了兩個(gè)University的對(duì)象,并對(duì)它們分別賦值:classTwoUniversity{publicstaticvoidmain(Stringargs[]){Universityu1=newUniversity();Universityu2=newUniversity();u1.name=\"北?copy;大學(xué)\";u1.city=\"北?copy;\";u2.name=\"清華大學(xué)\";u2.city=\"北?copy;\";System.out.println(\"大學(xué):\"+u1.name+\"城市:\"+u1.city);System.out.println(\"大學(xué):\"+u2.name+\"城市:\"+u2.city);}}這個(gè)例子創(chuàng)建了兩個(gè)University的對(duì)象,并且對(duì)它們的name、city分別賦了不同的值,這說(shuō)明這兩個(gè)對(duì)象是真正分離的。下面是該程序運(yùn)行后的輸出結(jié)果。C:\\>javaTwoUniversity大學(xué):北?copy;大學(xué)城市:北?copy;大學(xué):清華大學(xué)城市:北?copy;

  5.4點(diǎn)(.?copy;操作符點(diǎn)(.?copy;操作符用來(lái)接收一個(gè)對(duì)象的實(shí)例變量和成員函數(shù)。下面是用點(diǎn)操作符來(lái)接收實(shí)例變量的一般形式。objectreference.variablename

  這里objectreference是一個(gè)對(duì)象實(shí)例,variablename是這個(gè)對(duì)象里你想接收的實(shí)例變量。下面的程序段說(shuō)明了怎樣用點(diǎn)操作符來(lái)給實(shí)例變量賦值。

  u.name=\"北?copy;大學(xué)\";u.city=\"北?copy;\";下面說(shuō)明怎樣用點(diǎn)操作符來(lái)得到實(shí)例變量的值。System.out.println(\"大學(xué):\"+u.name+\"城市:\"+u.city);通過(guò)向類University里加入一個(gè)成員函數(shù)main,我們創(chuàng)建了一個(gè)完整的例子,它使用了new操作符來(lái)創(chuàng)建一個(gè)University,用點(diǎn)操作符來(lái)賦值,然后打印結(jié)果。classUniversity{Stringname,city;publicstaticvoidmain(Stringargs[]){Universityu=newUniversity();u.name=\"北?copy;大學(xué)\";u.city=\"北?copy;\";System.out.println(\"大學(xué):\"+u.name+\"城市:\"+u.city);}}

  運(yùn)行這個(gè)程序后,就會(huì)得到下面的結(jié)果。C:\\>javaUniversity大學(xué):北?copy;大學(xué)城市:北?copy;

首頁(yè) 1 2 3 4 5 6 7 尾頁(yè)
分享到:
本文糾錯(cuò)】【告訴好友】【打印此文】【返回頂部
將考試網(wǎng)添加到收藏夾 | 每次上網(wǎng)自動(dòng)訪問(wèn)考試網(wǎng) | 復(fù)制本頁(yè)地址,傳給QQ/MSN上的好友 | 申請(qǐng)鏈接 | 意見(jiàn)留言 TOP
關(guān)于本站  網(wǎng)站聲明  廣告服務(wù)  聯(lián)系方式  站內(nèi)導(dǎo)航  考試論壇
Copyright © 2006-2017 中華考試網(wǎng)(Examw.com) All Rights Reserved  營(yíng)業(yè)執(zhí)照
麻城市| 喀喇沁旗| 甘孜| 定边县| 衢州市| 会东县| 长葛市| 女性| 韩城市| 定西市| 平罗县| 万源市| 灵川县| 龙陵县| 渝北区| 宁国市| 拉萨市| 陇南市| 天全县| 西乡县| 厦门市| 永州市| 石台县| 新田县| 绥宁县| 洪江市| 仙游县| 共和县| 衡阳市| 马公市| 邳州市| 阆中市| 马尔康县| 原阳县| 南宫市| 海门市| 鄱阳县| 平乐县| 黄龙县| 新建县| 全椒县|