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

正文內(nèi)容

java語(yǔ)言基礎(chǔ)培訓(xùn)材料(編輯修改稿)

2025-03-21 01:03 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 tinue (用在循環(huán)體中) ? 提前結(jié)束本次循環(huán),即跳過(guò)后面的循環(huán)體語(yǔ)句,回到循環(huán)的條件測(cè)試部分繼續(xù)執(zhí)行。 ? continue 標(biāo)號(hào) ? 提前結(jié)束標(biāo)號(hào)所指循環(huán)。通常是某外層循環(huán)。 ? continue不是 goto 語(yǔ)句,標(biāo)號(hào)不能指向與本循環(huán)并列的循環(huán)或其他循環(huán),也不可指向非循環(huán)語(yǔ)句。 Application程序人口點(diǎn) public class HelloWorldApp { public static void main(String[] args) { … } } java HelloWorldApp 執(zhí)行包括 main方法的主類(lèi) java HelloWorldApp args[0] args[1] … 例:求 2~100的素?cái)?shù),每行打印 5個(gè)數(shù)字 import .*。 public class prime { public static void main(String args[]) { First_Loop: for(int i=2,k=0。i100。i++) { for(int j=2。j=(i)。j++) { if(i%j==0) continue First_Loop。 } (i+\t)。 k++。 if(k%5==0) ()。 } //for } //main } //class 面向?qū)ο蟪绦蛟O(shè)計(jì) 對(duì)象 ? 對(duì)象 (object) ? 客觀對(duì)象 現(xiàn)實(shí)生活中的對(duì)象可以是任何物體,例如,一臺(tái)計(jì)算機(jī)、人或動(dòng)植物、從最簡(jiǎn)單的整數(shù)到復(fù)雜的航天飛機(jī)等,都是現(xiàn)實(shí)生活中的對(duì)象,另外,一些看不見(jiàn)的事務(wù)、規(guī)則也是客觀存在的對(duì)象。 ? 客觀對(duì)象的兩個(gè)基本特點(diǎn) ? 任何一個(gè)物體都包括兩個(gè)基本特點(diǎn),一個(gè)是物體的內(nèi)部構(gòu)成 (或?qū)傩?),例如汽車(chē)的輪子、門(mén)和發(fā)動(dòng)機(jī)等,另一個(gè)是物體的行為 (或方式 ),既對(duì)該物體內(nèi)部構(gòu)成成分的操作或與外界信息的交換,例如汽車(chē)的發(fā)動(dòng)、鳴號(hào)、行使和停車(chē)等。 ? Java的對(duì)象 ? OOP用對(duì)象表示現(xiàn)實(shí)中的物體(客觀對(duì)象),有兩個(gè)基本的成分與客觀對(duì)象的兩個(gè)基本特點(diǎn)相對(duì)應(yīng): ? 屬性 (data)表示對(duì)象的屬性; ? 方法 (method)表示對(duì)象的行為。 對(duì)象與過(guò)程 ? 考慮對(duì)象 —考慮過(guò)程 :前者更有意義 ? 設(shè)計(jì)對(duì)象 —設(shè)計(jì)過(guò)程:前者更富挑戰(zhàn)性,尤其是設(shè)計(jì)可重用的對(duì)象。 ? 面向?qū)ο蟮某绦蛟O(shè)計(jì)和問(wèn)題求解力求符合人們?nèi)粘W匀坏乃季S習(xí)慣,降低分解問(wèn)題的難度和復(fù)雜性,提高整個(gè)求解過(guò)程的可控制性、可監(jiān)測(cè)性和可維護(hù)性,從而達(dá)到以較小的代價(jià)和較高的效率獲得較滿(mǎn)意效果的目的。 封裝 信息隱藏 ?― 封裝”是一種組織軟件的方法。其基本思想是把客觀世界中聯(lián)系緊密的元素及相關(guān)操作組織在一起,使其相互關(guān)系隱藏在內(nèi)部,而對(duì)外僅僅表現(xiàn)為與其他封裝體間的接口。從而構(gòu)造出具有獨(dú)立含義的軟件實(shí)現(xiàn)。 ? 封裝并不是一個(gè)新的概念,但在面向?qū)ο蟮某绦蛟O(shè)計(jì)中提出了一種全新的封裝方法 ── 類(lèi) 封裝 信息隱藏 ? 每個(gè)類(lèi)里都封裝了相關(guān)的數(shù)據(jù)和操作。在實(shí)際的開(kāi)發(fā)過(guò)程中,類(lèi)多用來(lái)構(gòu)建系統(tǒng)內(nèi)部的模塊, ? 由于封裝特性把類(lèi)內(nèi)的數(shù)據(jù)保護(hù)得很?chē)?yán)密,模塊與模塊間僅通過(guò)嚴(yán)格控制的界面進(jìn)行交互,使它們之間耦合和交叉大大減少,從而降低了開(kāi)發(fā)過(guò)程的復(fù)雜性,提高了效率和質(zhì)量,減少了可能的錯(cuò)誤,同時(shí)也保證了程序中數(shù)據(jù)的完整性和安全性。 封裝 軟件復(fù)用 ? 封裝使得對(duì)象: ? 對(duì)內(nèi)成為一個(gè)結(jié)構(gòu)完整、可自我管理、自我平衡、高度集中的整體。 ? 對(duì)外則是一個(gè)功能明確、接口單一、可在各種合適的環(huán)境下都能獨(dú)立工作的有機(jī)的單元。 ? 類(lèi)的封裝特性使得類(lèi)可重用性大為提高,這樣的有機(jī)單元特別適宜構(gòu)建大型標(biāo)準(zhǔn)化的應(yīng)用軟件系統(tǒng),可以大幅度地提高生產(chǎn)效率。 在程序中定義你抽象出的類(lèi) ? 新類(lèi)必須在已有類(lèi)的基礎(chǔ)上構(gòu)造。 ? 在已有類(lèi)的基礎(chǔ)上構(gòu)造新類(lèi)的過(guò)程稱(chēng)為派生 。 ? 派生出的新類(lèi)稱(chēng)為已有類(lèi)的子類(lèi)。已有類(lèi)稱(chēng)為超類(lèi)(父類(lèi))。 ? 子類(lèi) 繼承 父類(lèi)的方法和屬性。 ? 當(dāng)沒(méi)有顯式指定父類(lèi)時(shí),父類(lèi)隱含為 Object類(lèi)。 類(lèi)的繼承 ? 類(lèi)繼承 類(lèi)繼承是指一個(gè)新的類(lèi)繼承原有類(lèi)的基本特性。原來(lái)的類(lèi)稱(chēng)為父類(lèi)、超類(lèi) (superclass)或基類(lèi),新的類(lèi)稱(chēng)為原來(lái)類(lèi)的子類(lèi)或派生類(lèi)。在子類(lèi)中,不僅包含有父類(lèi)的屬性 (數(shù)據(jù) )和方法,還可增加新的屬性和功能。這種子類(lèi)繼承父類(lèi)的方法也被稱(chēng)為類(lèi)的派生 (deriving),也就是由父類(lèi)派生出子類(lèi)。 ? 子類(lèi)還可以派生新的子類(lèi),這種派生過(guò)程可以進(jìn)行多次,形成不同層次的類(lèi)。例如,人類(lèi)可分為工人、農(nóng)民、學(xué)生和教師等,學(xué)生又分為大學(xué)生、中學(xué)生和小學(xué)生,教師又分為小學(xué)教師、中學(xué)教師和大學(xué)教帥,大學(xué)教師又分為助教、講師、教授。人類(lèi)的這種劃分就形成了不同層次的類(lèi)。 ? 類(lèi)的繼承提高了程序的可復(fù)用性。根據(jù)類(lèi)的繼承機(jī)制,在父類(lèi)中只定義各層子類(lèi)都需要的屬性和功能,類(lèi)派生時(shí),只增加新的屬性和功能,因此父類(lèi)的基本特征可被所有子類(lèi)的對(duì)象共享,提高了類(lèi)的重復(fù)利用率,這樣,也極大地簡(jiǎn)化了軟件的開(kāi)發(fā),有利于提高軟件開(kāi)發(fā)的效率。Java系統(tǒng)已開(kāi)發(fā)了許多實(shí)用類(lèi)庫(kù),如輸入輸出類(lèi) (.*),用戶(hù)利用它們派生自己所需要的類(lèi),實(shí)現(xiàn)特定的輸入輸出功能。 ? 對(duì)于 Java而言,類(lèi)的聲明是使用 extends子句來(lái)繼承類(lèi),并且,只能繼承一個(gè)類(lèi)。 類(lèi)的多態(tài)性 ? 類(lèi)的多態(tài)性 ? 類(lèi)的多態(tài)性 (polymophism)是指一個(gè)名稱(chēng)有多種功能,或者相同的接口有多種實(shí)現(xiàn)的方法。 ? 在 Java編程語(yǔ)言中,類(lèi)的多態(tài)性通過(guò)方法的重載 (overloading)、覆蓋(overriding)和接口來(lái)實(shí)現(xiàn)。 類(lèi)的聲明 ? 類(lèi)聲明的完整格式為: ? [類(lèi)修飾符 ]class 新類(lèi)名 [extends 超類(lèi)名][implement 接口名 ] ? 其中, []內(nèi)的內(nèi)容為可選項(xiàng)。 類(lèi)修飾符 ? 類(lèi)修飾符 ? 類(lèi)修飾符決定了類(lèi)在程序運(yùn)行中被處理的方式。創(chuàng)建類(lèi)時(shí),可以接受缺省的修飾符,也可以根據(jù)需要指定一個(gè)或多個(gè)修飾符。 ? 這些修飾符可以是一個(gè)訪(fǎng)問(wèn)修飾符(public, protected, private),加上一個(gè)或多個(gè)類(lèi)型修飾符 (abstract, static,final, strictfp)。 類(lèi)名 與 Java的其他標(biāo)識(shí)符一樣,類(lèi)名有如下設(shè)置: (1)以字母、字符 或 $開(kāi)頭。 (2)只能含有大于十六進(jìn)制 00C0以上的Unicode字符。 (3)不能使用與 Java關(guān)鍵字相同的類(lèi)名。 (4)類(lèi)名通常以大寫(xiě)字母開(kāi)頭,如果類(lèi)名由多個(gè)單詞組成,則每一個(gè)單詞的開(kāi)頭字母也大寫(xiě)。 實(shí)例 ? abstract class Point{ int x=1, y=1。 void move(int dx, int dy){ x +=dx。 y +=dy。 alert()。 } abstract void alert()。 } class SimplePoint extends Point{ void alert(){} } 實(shí)例 class Employee { String name 。 int age 。 float salary 。 } Employee e = new Employee( ) 。 =―張立” ; =21。 = 。 類(lèi)定義 —方法說(shuō)明 ? 為 Employee類(lèi)增加打印方法 ——將數(shù)據(jù)和代碼封裝在一個(gè)單一的實(shí)體中。 class Employee { String name。 int age。 float salary 。 void print() { (name + ‖年齡為: ” + age + ― 月薪為: ” + salary ); } } //class 對(duì)象方法的含義 Employee emp = new Employee( ) 。 =―張立” ; =21。 = 。 ? 一旦對(duì)象被建立并被初始化,就可以調(diào)用該方法打印這個(gè)對(duì)象的數(shù)據(jù)。 () 。 ? 對(duì)象 emp執(zhí)行 print 方法操作自己的數(shù)據(jù);而不是從外部操作對(duì)象的數(shù)據(jù)。 ? 向?qū)ο蟀l(fā)消息,讓對(duì)象做某件事。 數(shù)據(jù)的隱藏 封裝 ? 屬性的訪(fǎng)問(wèn)權(quán)限 ? private ? public ? 默認(rèn) (相當(dāng)于 package) ? 使用 private 修飾符修飾屬性后,就不能從對(duì)象的外部直訪(fǎng)問(wèn)這些屬性 (類(lèi)內(nèi)方法仍可以訪(fǎng)問(wèn) ) ,而只能通過(guò)該類(lèi)的方法來(lái)操作這些屬性。 ? 私有屬性 —公有方法 ? 方法可以保護(hù)數(shù)據(jù)(做各種合法性檢查)。 ? 使得代碼可維護(hù)性好(代碼可變,接口不變) 類(lèi)方法的定義規(guī)則 ? [修飾符 ] 返回類(lèi)型 方法名 ([參數(shù)列表 ]) [throws 異常 ] ? {… …} ? 方法名后的小括號(hào)是方法的標(biāo)志。 ? 形式參數(shù)是方法從調(diào)用它的環(huán)境輸入的數(shù)據(jù)。 ? 返回值是方法在操作完成后返還給調(diào)用它的環(huán)境的數(shù)據(jù)。 ? 要指定方法返回值類(lèi)型。如沒(méi)有返回值,類(lèi)型要寫(xiě) void ? 方法名相同,但參數(shù)不同,是不同的方法。 ? 與類(lèi)名相同的所有方法都是類(lèi)的構(gòu)造方法。 方法體的定義 ? 在方法中定義的變量稱(chēng)為局部變量。 ? 其生命周期:執(zhí)行進(jìn)入方法體時(shí)建立,退出方法時(shí)撤消。 ? 局部變量使用之前必須初始化。 ? 在方法體中可以訪(fǎng)問(wèn)所有的類(lèi)屬性,可以調(diào)用所有類(lèi)中定義的方法。 ? 方法可以遞歸調(diào)用。 引用類(lèi)型 值傳送 基本類(lèi)型 值傳送 地址傳送 值傳送與地址傳送 A B A B 0x2F 0x2F A B 參數(shù)傳遞例 public class PassTest { float m_float 。 void change1(int pi) { pi = 100。 } void change2(String ps) { ps=new String(―Right‖) 。 } void change3(PassTest po ) { = 。 } public static void main(String[] args) { PassTest pt = new PassTest() 。 參數(shù)傳遞例 int i = 22 。 ( i ) 。 (―i value is ‖ + i)。 String s = new String( ―Hello‖ ) 。 ( s ) 。 (―s value is ‖ + s)。 = 。 ( pt ) 。 (―Current is ‖ + )。 } // main() } // class 實(shí)參 形參 copy 方法中使用“ this‖ class Banana { void f(int i) { ... } } Banana a = new Banana(), b = new Banana()。 (1)。 (2)。 ? 方法如何知道是處理哪個(gè)對(duì)象? ? 編譯做了一些內(nèi)部處理: (a,1)。 (b,2)。 ? 把一個(gè)隱含的參數(shù)傳給了方法 —指向被操作對(duì)象的引用。 ? 因?yàn)槭莾?nèi)部處理,引用沒(méi)有標(biāo)識(shí)名。 ? 如果你在方法中想拿到這個(gè)引用 ——this this class Banana { void pick() { … } void pit() { ()。 … } // pick() } public class MyDate { int day , month , year 。 public void tomorrow() { = + 1 。 //day = day + 1 … } } this
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1