freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

最新java程序設(shè)計(jì)培訓(xùn)教程-資料下載頁(yè)

2025-06-29 03:02本頁(yè)面
  

【正文】 = 11。 = 1960。 回顧對(duì)象的歷史早些時(shí)候的編程語(yǔ)言和初級(jí)程序員將每個(gè)變量看作相互無(wú)關(guān)的實(shí)體。例如,如果一個(gè)程序需處理某個(gè)日期,則要聲明三個(gè)單獨(dú)的整數(shù):int day, month, year。上述語(yǔ)句作了兩件事,一是當(dāng)程序需要日、月或年的有關(guān)信息時(shí),它將操作一個(gè)整數(shù); 二是為那些整數(shù)分配存儲(chǔ)器。盡管這種作法很容易理解,但它存在兩個(gè)重大缺陷。首先,如果程序需同時(shí)記錄幾個(gè)日期,則需要三個(gè)不同的聲明。例如,要記錄兩個(gè)生日,你可能使用:int myBirthDay, myBirthMonth, myBirthYear。int yourBirthDay, yourBirthMonth, yourBirthYear。這種方法很快就會(huì)引起混亂,因?yàn)樾枰拿Q(chēng)很多。第二個(gè)缺陷是這種方法忽視了日、月和年之間的聯(lián)系并把每個(gè)變量都作為一個(gè)獨(dú)立的值,每個(gè)變量都是一個(gè)獨(dú)立單元(在本例中為date)的一部分并被相應(yīng)地處理。 創(chuàng)建一個(gè)新類(lèi)型為克服上述兩種缺陷,Java編程語(yǔ)言使用類(lèi)來(lái)創(chuàng)建新類(lèi)型。請(qǐng)看下列原始類(lèi)型聲明:int day。Java編程語(yǔ)言被用來(lái)分配一定量的存儲(chǔ)器并解釋該存儲(chǔ)器的內(nèi)容。于是,要定義一個(gè)新的類(lèi)型,你必須指出需要多大存儲(chǔ)器和如何解釋存儲(chǔ)器內(nèi)容。這不是根據(jù)字節(jié)數(shù)或位的順序和含義來(lái)做,而是根據(jù)已經(jīng)定義的其它類(lèi)型來(lái)做。例如,要定義一個(gè)表示日期的類(lèi)型,你需要足夠的存儲(chǔ)器存儲(chǔ)三個(gè)整數(shù)變量;進(jìn)而,日、月和年的意義即由這些整數(shù)變量給出。如下所示:class MyDate {int day。int month。int year。}詞class是Java編程語(yǔ)言的一個(gè)關(guān)鍵字,必須全部小寫(xiě)。名稱(chēng)MyDate按照大小寫(xiě)的有關(guān)約定處理,而不是由語(yǔ)意要求來(lái)定。注意 class 不僅僅是一個(gè)集合數(shù)據(jù)類(lèi)型,這個(gè)問(wèn)題以后還將進(jìn)一步討論。一個(gè)變量可被聲明為歸屬于類(lèi)型MyDate,從而日、月和年部分將被隱含聲明。例如:MyDate myBirth, yourBirth。使用這個(gè)聲明,Java編程語(yǔ)言允許變量的部分(day, month和year)通過(guò)調(diào)用成員和使用點(diǎn)()運(yùn)算符而被訪問(wèn)。例如: = 26。 = 11。 = 1960。 創(chuàng)建一個(gè)對(duì)象創(chuàng)建一個(gè)對(duì)象 原始類(lèi)型的聲明可分配存儲(chǔ)器空間 非原始類(lèi)型的聲明不分配存儲(chǔ)器空間 聲明的變量不是數(shù)據(jù)本身, 而是數(shù)據(jù)的引用(或指針)當(dāng)任何原始類(lèi)型(如boolean, byte, short,char,int,long,float或double類(lèi)型) 的變量被聲明時(shí),作為上述操作的一部分,存儲(chǔ)器空間也同時(shí)被分配。使用非原始類(lèi)型(如String或class)的變量的聲明不為對(duì)象分配存儲(chǔ)器空間。事實(shí)上,使用class類(lèi)型聲明的變量不是數(shù)據(jù)本身,而是數(shù)據(jù)的引用(reference)。注意你也可以認(rèn)為引用是一個(gè)指針(pointer), 這可能會(huì)有助于你的理解。實(shí)際上, 在大多數(shù)實(shí)現(xiàn)中, 也確實(shí)可以這樣認(rèn)為。值得注意的是, Java編程語(yǔ)言實(shí)際上不支持指針數(shù)據(jù)類(lèi)型。在你可以使用變量之前,實(shí)際存儲(chǔ)器必須被分配。這個(gè)工作是通過(guò)使用關(guān)鍵字new來(lái)實(shí)現(xiàn)的。如下所示:MyDate myBirth。myBirth = new MyDate ()。第一個(gè)語(yǔ)句(聲明)僅為引用分配了足夠的空間,而第二個(gè)語(yǔ)句則通過(guò)調(diào)用對(duì)象為構(gòu)成MyDate的三個(gè)整數(shù)分配了空間。對(duì)象的賦值使變量myBirth重新正確地引用新的對(duì)象。這兩個(gè)操作被完成后,MyDate對(duì)象的內(nèi)容則可通過(guò)myBirth進(jìn)行訪問(wèn)。假使定義任意一個(gè)class XXXX, 你可以調(diào)用new XXXX () 來(lái)創(chuàng)建任意多的對(duì)象,對(duì)象之間是分隔的。一個(gè)對(duì)象的引用可被存儲(chǔ)在一個(gè)變量里,因而一個(gè)”變量點(diǎn)成員”()可用來(lái)訪問(wèn)每個(gè)對(duì)象的單個(gè)成員。請(qǐng)注意在沒(méi)有對(duì)象引用的情況下,仍有可能使用對(duì)象,這樣的對(duì)象稱(chēng)作”匿名”對(duì)象。 創(chuàng)建一個(gè)對(duì)象存儲(chǔ)器分配和布局創(chuàng)建一個(gè)對(duì)象存儲(chǔ)器分配和布局一個(gè)聲明僅為一個(gè)引用分配存儲(chǔ)器 MyDate today today = new MyDate()。 today????在一個(gè)方法體中,聲明MyDate todaytoday = new MyDate()。僅為一個(gè)引用分配存儲(chǔ)器????today關(guān)鍵字new意味著存儲(chǔ)器的分配和初始化MyDate today。today = new MyDate()。賦值則建立了引用變量,從而它可適當(dāng)?shù)匾眯碌膭?chuàng)建對(duì)象MyDate today。today = new MyDate()。使用一個(gè)語(yǔ)句同時(shí)為引用today和由引用today所指的對(duì)象分配空間也是可能的。MyDate today = new MyDate ()。 引用類(lèi)型的賦值引用變量的賦值請(qǐng)考慮下列代碼片段: int x = 7。 int y = x。 String s = “Hello”。 String t = s。在Java編程語(yǔ)言中,用類(lèi)的一個(gè)類(lèi)型聲明的變量被指定為引用類(lèi)型,這是因?yàn)樗谝靡粋€(gè)非原始類(lèi)型,這對(duì)賦值具有重要的意義。請(qǐng)看下列代碼片段:int x = 7。int y = x。String s = “Hello”。String t = s。四個(gè)變量被創(chuàng)建:兩個(gè)原始類(lèi)型 int 和兩個(gè)引用類(lèi)型String。x的值是7,而這個(gè)值被復(fù)制到y(tǒng);x 和 y是兩個(gè)獨(dú)立的變量且其中任何一個(gè)的進(jìn)一步的變化都不對(duì)另外一個(gè)構(gòu)成影響。至于變量 s 和 t,只有一個(gè)String 對(duì)象存在, 它包含了文本”Hello” ,s 和 t均引用這個(gè)單一的對(duì)象。將變量t 重新定義,則新的對(duì)象World被創(chuàng)建,而 t 引用這個(gè)對(duì)象。上述過(guò)程被描述如下: 術(shù)語(yǔ)回顧術(shù)語(yǔ)回顧 Class Object Reference type member本模塊中介紹了幾個(gè)術(shù)語(yǔ),簡(jiǎn)單回顧如下: 類(lèi)在Java編程語(yǔ)言中定義新類(lèi)型的一種途徑。類(lèi)聲明可定義新類(lèi)型并描述這些類(lèi)型是如何實(shí)現(xiàn)的。有許多關(guān)于類(lèi)的其它特性還未討論。 對(duì)象一個(gè)類(lèi)的實(shí)例。類(lèi)可被認(rèn)為是一個(gè)模板你正在描述一個(gè)對(duì)象模型。一個(gè)對(duì)象就是你每次使用new創(chuàng)建一個(gè)類(lèi)的實(shí)例的結(jié)果。 引用類(lèi)型一個(gè)用戶(hù)定義類(lèi)型, 它可引用類(lèi)、界面和數(shù)組。 成員構(gòu)成一個(gè)對(duì)象的元素之一。這個(gè)詞也被用作定義類(lèi)的元素(elements)。成員變量(member variabl)、實(shí)例變量(instance variable)和域(field)也經(jīng)常被互換使用。練習(xí):使用對(duì)象練習(xí)目標(biāo)──正確使用Java關(guān)鍵字,編寫(xiě)一個(gè)創(chuàng)建類(lèi)的程序并從類(lèi)創(chuàng)建一個(gè)對(duì)象。編譯并運(yùn)行程序,然后校驗(yàn)引用是否被賦值并檢查引用是不是按照本模塊所描述的那樣操作的。一、準(zhǔn)備為了成功地完成本練習(xí),你必須能夠編譯并運(yùn)行Java程序,并且需要熟悉有關(guān)類(lèi)和對(duì)象的面向?qū)ο蟮母拍詈鸵玫母拍?。二、任?wù)1級(jí):創(chuàng)建一個(gè)類(lèi)和相應(yīng)的對(duì)象1. 一個(gè)點(diǎn)可用x和y坐標(biāo)描述。定義一個(gè)稱(chēng)為MyPoint的類(lèi)來(lái)表達(dá)上述想法。你應(yīng)該稱(chēng)這個(gè)文件為什么?2. 在你的類(lèi)中編寫(xiě)一個(gè)類(lèi)方法,然后為類(lèi)型MyPoint聲明兩個(gè)變量,將變量稱(chēng)為start和end;用new MyPoint()創(chuàng)建對(duì)象并分別將引用值賦予變量start和end;3. 將值10賦予對(duì)象start的成員x和y;4. 將值20賦予對(duì)象end的x值,將值20賦予對(duì)象end的y值。5. 分別打印MyPoint對(duì)象(start和end)的成員值(x和y)。注意為完成第5步,你需要更多地了解system類(lèi)。()可輸出string并開(kāi)始新的一行,()不開(kāi)始新的一行。(),你應(yīng)該在這個(gè)應(yīng)用程序結(jié)束之前,()(),否則你會(huì)發(fā)現(xiàn),輸出的最后一行未被顯示出來(lái)。為顯示數(shù)字,你可以使用下列形式(稍后將在本課程中討論)(“Start MyPoint = x:“+ + “ y “ + )。注意如果一個(gè)操作數(shù)已經(jīng)是一個(gè)String, 則加號(hào)(+)將另一個(gè)操作數(shù)轉(zhuǎn)換成String。6. 編譯并運(yùn)行程序。2級(jí):檢驗(yàn)引用賦值使用你在前一個(gè)練習(xí)中MyPoint類(lèi),增加代碼到main()方法,以完成下列事項(xiàng):1. 為類(lèi)型MyPoint聲明一個(gè)新的變量,稱(chēng)之為stray。將現(xiàn)存變量end的引用值賦予stray;2. 打印end和stray變量的成員x和y的值;3. 賦予變量stray的成員x和y新的值;4. 打印end和stray的成員的值;編譯并運(yùn)行MyPoint類(lèi)。end的值反映了stray內(nèi)的變化,表明兩個(gè)變量都引用了同一個(gè)MyPoint對(duì)象;5. 將start變量的成員x和y賦予新的值;6. 打印start和end的成員值。 再次編譯并運(yùn)行MyPoint類(lèi),start的值仍然獨(dú)立于stray和end的值,表明start變量仍然在引用一個(gè)MyPoint對(duì)象,而這個(gè)對(duì)象與stray和end引用的對(duì)象是不同的。三、練習(xí)小結(jié)討論──用幾分鐘的時(shí)間討論一下在以上練習(xí)中你所獲得的經(jīng)驗(yàn)、感想和發(fā)現(xiàn)。經(jīng)驗(yàn) 解釋 總結(jié) 應(yīng)用四、檢查你的進(jìn)度在進(jìn)入下一模塊之前,請(qǐng)確認(rèn)你已經(jīng)能夠: 在源程序中使用注釋 區(qū)分有效和無(wú)效標(biāo)識(shí)符 識(shí)別Java技術(shù)關(guān)鍵字 列出八個(gè)原始類(lèi)型 為數(shù)字和文本類(lèi)型定義文字值 定義術(shù)語(yǔ)class, object,member,variable,referrence variable 為一個(gè)簡(jiǎn)單的包含原始成員變量的類(lèi)創(chuàng)建一個(gè)類(lèi)定義 聲明類(lèi)類(lèi)型的變量 使用new構(gòu)造一個(gè)對(duì)象 描述缺省初始化 使用點(diǎn)符號(hào)訪問(wèn)一個(gè)對(duì)象的成員變量 描述引用變量的意義 陳述分配類(lèi)類(lèi)型變量的結(jié)果五、思考題在你現(xiàn)有應(yīng)用程序中,你可以構(gòu)思一個(gè)使用類(lèi)和對(duì)象的例子嗎 第三章 表達(dá)式和流程控制本模塊討論變量、運(yùn)算符和算術(shù)表達(dá)式并列出不同的管理運(yùn)行程序路徑的控制結(jié)構(gòu)。第一節(jié) 相關(guān)問(wèn)題討論──下列問(wèn)題與本模塊闡述的論題相關(guān)。 什么類(lèi)型的變量對(duì)程序員有用(例如,其它語(yǔ)言的程序員想了解Java編程語(yǔ)言是如何定義和處理全局變量和局部變量的) ? 復(fù)合類(lèi)可以有同名的變量嗎?如果可以,它們的作用域有多大? 列出用于其它語(yǔ)言的控制結(jié)構(gòu);一般語(yǔ)言都采用什么方法進(jìn)行流程控制和中斷流程(如在循環(huán)或開(kāi)關(guān)語(yǔ)句中) ?第二節(jié) 目 標(biāo)完成本模塊的學(xué)習(xí)后,你應(yīng)該能夠: 區(qū)分實(shí)例變量和局部變量; 描述實(shí)例變量是如何被初始化的; 確認(rèn)并更正編譯器錯(cuò)誤; 辨認(rèn)、描述并使用Java軟件運(yùn)算符; 區(qū)分合法和非法原始類(lèi)型賦值; 確認(rèn)boolean表達(dá)式和它們?cè)诳刂茦?gòu)造中的要求; 辨認(rèn)賦值兼容性和在基本類(lèi)型中的必要計(jì)算; 使用if, switch,for,while和do句型結(jié)構(gòu)和break和continue的標(biāo)號(hào)形式作為程序中的流程控制結(jié)構(gòu)。第三節(jié) 表達(dá)式 變量和作用域變量和作用域 局部(local)變量是在一個(gè)方法內(nèi)定義的變量, 也被稱(chēng)作自動(dòng)(automatic)、臨時(shí)(temporary)或棧(stack)變量 當(dāng)一個(gè)方法被執(zhí)行時(shí), 局部變量被創(chuàng)建;當(dāng)一個(gè)方法被終止時(shí), 局部變量被清除 局部變量必須使用之前初始化, 否則編譯時(shí)將出錯(cuò)你已經(jīng)看到了兩種變量的描述方法:原始類(lèi)型變量和引用類(lèi)型變量。你也看到了變量被聲明的位置:在方法內(nèi)(方法是面向?qū)ο蟮男g(shù)語(yǔ),它可引用函數(shù)或子程序,例如:main())或在方法外但在類(lèi)定義之內(nèi)。變量也可被定義為方法參數(shù)或構(gòu)造函數(shù)參數(shù)。在方法內(nèi)定義的參數(shù)被稱(chēng)為局部(local)變量,有時(shí)也被用為自動(dòng)(automatic)、臨時(shí)(temporary)或棧(stack)變量。在方法外定義的變量是在使用new Xxxx ()調(diào)用構(gòu)造一個(gè)對(duì)象時(shí)被創(chuàng)建。在構(gòu)造一個(gè)對(duì)象時(shí),可創(chuàng)建兩種變量。一是類(lèi)變量,它是用static關(guān)鍵字來(lái)聲明的;只要需要對(duì)象,類(lèi)變量就將存在。二是實(shí)例變量,它不需用static關(guān)鍵字來(lái)聲明;只要對(duì)象被當(dāng)作引用,實(shí)例變量就將存在。實(shí)例變量有時(shí)也被用作成員變量,因?yàn)樗鼈兪穷?lèi)的成員。方法參數(shù)變量定義在一個(gè)方法調(diào)用中傳送的自變量,每次當(dāng)方法被調(diào)用時(shí),一個(gè)新的變量就被創(chuàng)建并且一直存在到程序的運(yùn)行跳離了該方法。當(dāng)執(zhí)行進(jìn)入一個(gè)方法時(shí),局部變量被創(chuàng)建,當(dāng)執(zhí)行離開(kāi)該方法時(shí),局部變量被取消。因而,局部變量有時(shí)也被引用為“臨時(shí)或自動(dòng)”變量。在成員函數(shù)內(nèi)定義的變量對(duì)該成員變量是“局部的”,因而,你可以在幾個(gè)成員函數(shù)中使用相同的變量名而代表不同的變量。 該方法的應(yīng)用如下所示:class OurClass {int i。 // instance variable of class OurClassint firstMethod() {int j=0。 // local variable// both i and j are accessible from// this point...return 1。} // end of firstMethod()int secondMethod(float f) { //method parameterint j=0。 //local variable. Different from the// j defined in firstMethod().// Scope is limited to the body of// secondMethod().// Both i(instance variable of the// class OurClass) and j (l
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1