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

正文內(nèi)容

java與sql的數(shù)據(jù)庫(kù)技術(shù)的學(xué)生成績(jī)管理系統(tǒng)-wenkub

2023-05-01 05:39:27 本頁(yè)面
 

【正文】 目中: a instanceof Animal返回關(guān)系運(yùn)算符:instanceofa instanceof Animal。將d強(qiáng)制聲明為a類型,此時(shí)d為Dog(),此時(shí)d就可以調(diào)用運(yùn)行時(shí)類型。(思考上面的格式)運(yùn)行時(shí)多態(tài)的三原則:(應(yīng)用時(shí)為覆蓋) 對(duì)象不變;(改變的是主觀認(rèn)識(shí)) 對(duì)于對(duì)象的調(diào)用只能限于編譯時(shí)類型的方法,如調(diào)用運(yùn)行時(shí)類型方法報(bào)錯(cuò)。多態(tài)分兩種:① 編譯時(shí)多態(tài):編譯時(shí)動(dòng)態(tài)重載;② 運(yùn)行時(shí)多態(tài):指一個(gè)對(duì)象可以具有多個(gè)類型。如果沒有定義構(gòu)造方法,那么就會(huì)調(diào)用父類的無參構(gòu)造方法,即super()。構(gòu)造一個(gè)對(duì)象的順序:(注意:構(gòu)造父類對(duì)象的時(shí)候也是這幾步)① 遞歸地構(gòu)造父類對(duì)象;② 順序地調(diào)用本類成員屬性賦初值語(yǔ)句;③ 本類的構(gòu)造方法。之所以構(gòu)造方法先運(yùn)行父類再運(yùn)行子類是因?yàn)闃?gòu)造方法是無法覆蓋的。(注意返回值類型也必須相同,否則編譯出錯(cuò)。JAVA中不允許多繼承,一個(gè)類有且只有一個(gè)父類(單繼承)。父類的非私有化屬性和方法可以默認(rèn)繼承到子類。(想用private還要用set和get方法供其他方法調(diào)用,這樣可以保證對(duì)屬性的訪問方式統(tǒng)一,并且便于維護(hù)訪問權(quán)限以及屬性數(shù)據(jù)合法性)如果沒有特殊情況,屬性一定私有,方法該公開的公開。(this)對(duì)象的number方法。This表示當(dāng)前對(duì)象。在構(gòu)造方法中,this表示本類的其他構(gòu)造方法:student(){}。public void teach(int a){}。利用類型的差異來影響對(duì)方法的調(diào)用。但修飾詞可能相同,返回值也可能相同。(編寫一個(gè)程序驗(yàn)證對(duì)象的傳遞的值為地址)注意下面這種形式:static void changename(student stu){ “LUCY”}注意生成新的對(duì)象與舊對(duì)象指向無關(guān),生成新對(duì)象生命消亡與舊對(duì)象無關(guān)。注意:在對(duì)象變量中存放的是引用(地址);在簡(jiǎn)單變量中存放的是數(shù)值。此時(shí)S稱為一個(gè)對(duì)象變量。用類來生成對(duì)象的語(yǔ)句:Student s=new Student()。格式為:public 方法名。書寫方法的格式:修飾符 返回值 方法名 調(diào)用過程中 方法體可能出現(xiàn)的例外 public int/void addNumber(參數(shù)) throw Excepion {}例:public int addNumber(int a,int b){}注:方法名中的參數(shù)int a,int b為局部變量類方法中的一類特殊方法:構(gòu)造方法。實(shí)例變量的對(duì)象賦值為null。實(shí)例變量:定義在類中但在任何方法之外。開發(fā)過程是用對(duì)個(gè)簡(jiǎn)單的對(duì)象的多個(gè)簡(jiǎn)單的方法,來實(shí)現(xiàn)復(fù)雜的功能 。比較面向過程的思想和面向?qū)ο蟮乃枷耄好嫦蜻^程的思想:由過程、步驟、函數(shù)組成,以過程為核心;面向?qū)ο蟮乃枷耄阂詫?duì)象為中心,先開發(fā)類,得到對(duì)象,通過對(duì)象之間相互通信實(shí)現(xiàn)功能。這樣才能使每個(gè)對(duì)象本身做成最好的。分析對(duì)象主要從方法開始。對(duì)象的方法的實(shí)現(xiàn)細(xì)節(jié)是屏蔽的,只有對(duì)象方法的實(shí)現(xiàn)者了解細(xì)節(jié)。能夠做什么(方法):告訴外界對(duì)象有那些功能。JAVA的面向?qū)ο缶幊陶n堂筆記面向?qū)ο笾饕槍?duì)面向過程。后者以前者為基礎(chǔ)。方法的定義非常重要。我們通過類來看待對(duì)象,類是對(duì)象的抽象。對(duì)于對(duì)象的要求:高內(nèi)聚、低耦合,這樣容易拼裝成為一個(gè)系統(tǒng)。面向過程是先有算法,后有數(shù)據(jù)結(jié)構(gòu)。從語(yǔ)法上來看,一個(gè)類是一個(gè)新的數(shù)據(jù)類型。(New出來的均有初值)局部變量:定義在方法之中的變量。局部變量不允許范圍內(nèi)定義兩個(gè)同名變量。構(gòu)造方法是當(dāng)用類生成對(duì)象時(shí),系統(tǒng)在生成對(duì)象的過程中利用的方法。構(gòu)造方法的方法名與類名相同。第一個(gè)Student表示這是用Student類進(jìn)行定義??梢詷?gòu)造多個(gè)構(gòu)造方法,但多個(gè)構(gòu)造方法的參數(shù)表一定不同,參數(shù)順序不同即屬于不同的構(gòu)造方法:public student(string name,int a){}public student(int a,string name){}為兩個(gè)不同的構(gòu)造方法。面向?qū)ο蠓椒ǖ闹剌d(overloading)和覆蓋(overriding)。在程序的編譯過程中根據(jù)變量類型來找相應(yīng)的方法。吃()可以分為吃肉,吃菜,吃藥,在一個(gè)類中可以定義多個(gè)吃方法。public void teach(String a){}為三種不同的方法。student(string n){ this()。Public void printNum(){ Int number=40; ()。封裝:使對(duì)象的屬性盡可能私有,對(duì)象的方法盡可能的公開。如果不指明誰調(diào)用方法,則默認(rèn)為this。Class Son extends Father{}而如果父類中的私有方法被子類調(diào)用的話,則編譯報(bào)錯(cuò)。JAVA的數(shù)據(jù)結(jié)構(gòu)為樹型結(jié)構(gòu),而非網(wǎng)狀。)如果方法不同,則成重載。以下范圍依次由嚴(yán)到寬:private :本類訪問;default :表示默認(rèn),不僅本類訪問,而且是同包可見。Super()表示調(diào)用父類的構(gòu)造方法。要養(yǎng)成良好的編程習(xí)慣:就是要加上默認(rèn)的父類無參的構(gòu)造方法。對(duì)象是客觀的,人對(duì)對(duì)象的認(rèn)識(shí)是主觀的。在上面的例子中:Animal a=new Dog();對(duì)象a的編譯時(shí)類型為Animal,運(yùn)行時(shí)類型為dog。注意:a和d指向同一對(duì)象。(這個(gè)式子的結(jié)果是一個(gè)布爾表達(dá)式)a為對(duì)象變量,Animal是類名。True, a instanceof Dog也返回此時(shí)編譯無誤,但運(yùn)行則會(huì)報(bào)錯(cuò)。運(yùn)行程序訪問的屬性仍為編譯時(shí)屬性。(正方形)squ為rect子類,rect有cha()用于比較長(zhǎng)寬的差。面向?qū)ο蟾呒?jí)、集合和例外都是面向?qū)ο蟮暮诵膬?nèi)容。例:static int data。其變量可以通過類名去訪問:。一般情況下,主方法是靜態(tài)方法,所以可調(diào)用靜態(tài)方法,主方法為靜態(tài)方法是因?yàn)樗钦麄€(gè)軟件系統(tǒng)的入口,而進(jìn)入入口時(shí)系統(tǒng)中沒有任何對(duì)象,只能使用類調(diào)用。一般靜態(tài)代碼塊被用來初始化靜態(tài)成員。這樣可以用final保證用戶調(diào)用時(shí)動(dòng)作的一致性,可以防止子類覆蓋情況的發(fā)生。 ?Static final int age=10;在JAVA中利用public static final的組合方式對(duì)常量進(jìn)行標(biāo)識(shí)(固定格式)。局部變量可以隨時(shí)賦值。如果一個(gè)方法前有修飾詞private或static,則系統(tǒng)會(huì)自動(dòng)在前面加上final。Abstract(抽象)可以修飾類、方法如果將一個(gè)類設(shè)置為abstract,則此類必須被繼承使用。Final和abstract永遠(yuǎn)不會(huì)同時(shí)出現(xiàn)。如果一個(gè)類中有一個(gè)抽象方法,那么這個(gè)類一定為一個(gè)抽象類。這個(gè)類必須為抽象類,這與此類為非抽象沖突,所以報(bào)錯(cuò)。而父類并不實(shí)現(xiàn),留給子類去實(shí)現(xiàn)。(這是因?yàn)閟tatic不可被覆蓋,而abstract為了生效必須被覆蓋。}}class SubClass extends SuperClass(){ void print(){(“print”)。一個(gè)接口中,所有方法為公開、抽象方法;所有的屬性都是公開、靜態(tài)、常量。實(shí)現(xiàn)中接口和類相同。② 一個(gè)類只能繼承另外一個(gè)類,但是它可以繼承多個(gè)接口,中間用“,”隔開。接口也可以用于定義對(duì)象IA I=new IAImpl()。I instance of A。接口往往被我們定義成一類XX的東西。②接口也因?yàn)樯鲜鲈虮挥脕肀3旨軜?gòu)的穩(wěn)定性。以下介紹的三種方法屬于Object:(1) finalize方法:當(dāng)一個(gè)對(duì)象被垃圾回收的時(shí)候調(diào)用的方法。以取得我們想得到的表現(xiàn)形式,即當(dāng)我們想利用一個(gè)自定義的方式描述對(duì)象的時(shí)候,我們應(yīng)該覆蓋toString()。附加知識(shí):字符串類為JAVA中的特殊類,String中為final類,一個(gè)字符串的值不可重復(fù)。“hello”。系統(tǒng)的返回值為true。 (b)是a與b的值的比較。((b))。amp。 if (! o instanceof strudent) return false。==) return true。封裝類:JAVA為每一個(gè)簡(jiǎn)單數(shù)據(jù)類型提供了一個(gè)封裝類,使每個(gè)簡(jiǎn)單數(shù)據(jù)類型可以被Object來裝載。String s1=(i)。附加內(nèi)容:“==”在任何時(shí)候都是比較地址,這種比較永遠(yuǎn)不會(huì)被覆蓋。內(nèi)部類:(注:所有使用內(nèi)部類的地方都可以不用內(nèi)部類,使用內(nèi)部類可以使程序更加的簡(jiǎn)潔,便于命名規(guī)范和劃分層次結(jié)構(gòu))。(而外部類不可以:外部類只能使用PUBLIC和DEFAULT)。在內(nèi)部類中訪問實(shí)例變量:在內(nèi)部類訪問外部類的實(shí)例變量:。這樣就在外部類中實(shí)現(xiàn)了比外部類的private還要小的訪問權(quán)限。(編寫一個(gè)程序檢驗(yàn):,會(huì)出現(xiàn)幾個(gè)class.)成員內(nèi)部類不可以有靜態(tài)屬性。 in=()。與局部變量類似,在局部?jī)?nèi)部類前不加修飾符public和private,其范圍為定義它的代碼塊。靜態(tài)內(nèi)部類只能訪問外部類的靜態(tài)成員。靜態(tài)內(nèi)部類不可用private來進(jìn)行定義。注意:當(dāng)類與接口(或者是接口與接口)發(fā)生方法命名沖突的時(shí)候,此時(shí)必須使用內(nèi)部類來實(shí)現(xiàn)。IA I=new IA(){}。匿名內(nèi)部類在編譯的時(shí)候由系統(tǒng)自動(dòng)起名Out$。例外是程序中所有出乎意料的結(jié)果。此時(shí)程序一定會(huì)退出,因?yàn)橐呀?jīng)失去了運(yùn)行所必須的物理環(huán)境。)在Exception中,所有的非未檢查異常都是已檢查異常,沒有另外的異常?。∥礄z查異常是因?yàn)槌绦騿T沒有進(jìn)行必要的檢查,因?yàn)樗氖韬龊湾e(cuò)誤而引起的異常。已檢查異??隙缭匠隽颂摂M機(jī)的范圍。例:public void print() throws Exception.對(duì)于方法a,如果它定義了throws Exception。因?yàn)殄e(cuò)誤返回后,后面的程序肯定沒有機(jī)會(huì)執(zhí)行,那么JAVA認(rèn)為以后的程序沒有存在的必要。最后程序正常退出。我們可以寫多個(gè)catch語(yǔ)句,但是不能將父類型的exception的位置寫在子類型的excepiton之前,因?yàn)檫@樣父類型肯定先于子類型被匹配,所有子類型就成為廢話。如果在程序中書寫了檢查(拋出)exception但是沒有對(duì)這個(gè)可能出現(xiàn)的檢查結(jié)果進(jìn)行處理,那么程序就會(huì)報(bào)錯(cuò)。Exception有一個(gè)message屬性。開發(fā)中的兩個(gè)道理:①如何控制try的范圍:根據(jù)操作的連動(dòng)性和相關(guān)性,如果前面的程序代碼塊拋出的錯(cuò)誤影響了后面程序代碼的運(yùn)行,那么這個(gè)我們就說這兩個(gè)程序代碼存在關(guān)聯(lián),應(yīng)該放在同一個(gè)try中。當(dāng)我們自己定義一個(gè)例外類的時(shí)候必須使其繼承excepiton或者RuntimeException。斷言是一種調(diào)試工具(assert)其后跟的是布爾類型的表達(dá)式,如果表達(dá)式結(jié)果為真不影響程序運(yùn)行。方法的覆蓋中,如果子類的方法拋出的例外是父類方法拋出的例外的父類型,那么編譯就會(huì)出錯(cuò):子類無法覆蓋父類。如果父類型無throws時(shí),子類型也不允許出現(xiàn)throws。集合(從本部分開始涉及API)集合是指一個(gè)對(duì)象容納了多個(gè)對(duì)象,這個(gè)集合對(duì)象主要用來管理維護(hù)一系列相似的對(duì)象。(注:)集合框架接口的分類:(分collection接口 和 map接口) Collection接口 Map接口List接口 Set接口 SortedMap接口 SortedSet接口JAVA中所有與集合有關(guān)的實(shí)現(xiàn)類都是這六個(gè)接口的實(shí)現(xiàn)類。(正好與List對(duì)應(yīng))SortedSet會(huì)按照數(shù)字將元素排列,為“可排序集合”。例子:key1—value1。Collection接口和Map接口只能存對(duì)象。注:數(shù)組和集合都是從下標(biāo)0開始。只有List可用get和size。 得到一個(gè)迭代器,將集合中所有元素順序排列。Next()會(huì)將游標(biāo)移到下一個(gè)元素,并把它所跨過的元素返回。有Sort方法用于給List排序。這種情況下一定要定義排序規(guī)則。我們通過返回值1和1位置的調(diào)換來實(shí)現(xiàn)升序和降序排列的轉(zhuǎn)換。用Iterator遍歷,排序之后,再進(jìn)行遍歷。而在LinkedList的底層是一種雙向循環(huán)鏈表。所以LinkedList具有查詢效率低但增刪效率高的特點(diǎn)。堆棧:后進(jìn)先出的數(shù)據(jù)結(jié)構(gòu)。 addLast()。用isEmpty()其父類的方法,來判斷棧是否為空。)結(jié)論:在考慮并發(fā)的情況下用Vector(保證線程的安全)。因?yàn)閂ector的底層是數(shù)組,且Vector有g(shù)et方法(意味著它可能訪問到并不屬于最后一個(gè)位置元素的其他元素,很不安全)。(,collection有queue來實(shí)現(xiàn)隊(duì)列。HashSet底層用的也是數(shù)組。(n為數(shù)組的長(zhǎng)度),取得余數(shù)后,利用余數(shù)向數(shù)組中相應(yīng)的位置添加數(shù)據(jù),以n為6為例,如果I=0則放在數(shù)組a[0]位置,如果I=1,則放在數(shù)組a[1]位置。如果我們能夠使兩個(gè)相同的對(duì)象具有相同hashcode,才能在equals()返回為真。結(jié)論:如將自定義類用hashSet來添加對(duì)象,一定要覆蓋hashcode()和equals(),覆蓋的原則是保證當(dāng)兩個(gè)對(duì)象hashcode返回相同的整數(shù),而且equals()返回值為True。}這個(gè)例子保證了相同姓名和年齡的記錄返回的hashCode是相同的。但是hashSet增刪的高效率是通過花費(fèi)大量的空間換來的:因?yàn)榭臻g越大,取余數(shù)相同的情況就越小。添加知識(shí)點(diǎn):集合對(duì)象存放的
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1