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

正文內(nèi)容

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

2025-05-01 05:39本頁面
  

【正文】 yList。集合的最大缺點是無法進(jìn)行類型判定(),這樣就可能出現(xiàn)因為類型不同而出現(xiàn)類型錯誤。 LinkedList接口(在代碼的使用過程中和ArrayList沒有什么區(qū)別)ArrayList底層是object數(shù)組,所以ArrayList具有數(shù)組的查詢速度快的優(yōu)點以及增刪速度慢的缺點。在此鏈表上每一個數(shù)據(jù)節(jié)點都由三部分組成:前指針(指向前面的節(jié)點的位置),數(shù)據(jù),后指針(指向后面的節(jié)點的位置)。雙向循環(huán)鏈表的查詢效率低但是增刪效率高。ArrayList和LinkedList在用法上沒有區(qū)別,但是在功能上還是有區(qū)別的。隊列:先進(jìn)先出的數(shù)據(jù)結(jié)構(gòu)。注意:使用堆棧的時候一定不能提供方法讓不是最后一個元素的元素獲得出棧的機(jī)會。 removeFirst()。 removeLast()。Push用addFirst();pop用removeFirst(),實現(xiàn)后進(jìn)先出。在隊列中,put為入隊列操作,get為出隊列操作。List接口的實現(xiàn)類(Vector)(與ArrayList相似,區(qū)別是Vector是重量級的組件,使用使消耗的資源比較多。在不考慮并發(fā)的情況下用ArrayList(不能保證線程的安全)??墒莝tack的父類是最不應(yīng)該為Vector的。對于堆棧和隊列只能用push類和get類。?。。崿F(xiàn)堆棧一定要用LinkedList。)SetHashSet實現(xiàn)類:遍歷一個Set的方法只有一個:迭代器(interator)。在Object中除了有final(),toString(),equals(),還有hashCode()。當(dāng)向數(shù)組中利用add(Object o)添加對象的時候,系統(tǒng)先找對象的hashCode:int hc=()。Int I=hc%n。如果equals()返回的值為true,則說明數(shù)據(jù)重復(fù)。這樣的機(jī)制就導(dǎo)致兩個相同的對象有可能重復(fù)地添加到數(shù)組中,因為他們的hashCode不同。在實例中,定義student對象時覆蓋它的hashcode。現(xiàn)在,在大部分的JDK中,都已經(jīng)要求覆蓋了hashCode。如果偷懶,沒有設(shè)定equals(),就會造成返回hashCode雖然結(jié)果相同,但在程序執(zhí)行的過程中會多次地調(diào)用equals(),從而影響程序執(zhí)行的效率。例子:public int hashCode(){ return ()+age。使用hashSet的優(yōu)點:hashSet的底層是數(shù)組,其查詢效率非常高。因為hashSet查詢和刪除和增加元素的效率都非常高。HashSet這種算法會建立許多無用的空間。練習(xí):new一個hashset,插入employee對象,不允許重復(fù),并且遍歷出來。例:Student S(s)。Student s2=(Student)((o1))。SortedSet可自動為元素排序。練習(xí):自定義類用TreeSet排序。只要實現(xiàn)pareable和pareTo()接可以實現(xiàn)過濾功能。如果要查詢集合中的數(shù)據(jù),使用Set必須全部遍歷,所以查詢的效率低。集合中常用的是:ArrayList,HashSet,HashMap。使用HashMap,put()表示放置元素,get()表示取元素。上面這個算法的關(guān)鍵語句:Set s=()。Object key=()。注意:HashMap與HashCode有關(guān),用Sort對象排序。Key值既然可以作為對象,那么也可以用一個自定義的類。當(dāng)我們用自定義的類對象作為key時,我們必須在程序中覆蓋HashCode()和equals()。HashSet實際上為()類型的HashMap。正因為以上的原因,TreeSet和TreeMap的實現(xiàn)也有些類似的關(guān)系。我們應(yīng)該熟悉各種實現(xiàn)類的選擇——非常體現(xiàn)你的功底。基于以上原因,我們盡可能的運(yùn)用HashSet而不用TreeSet,除非必須排序。HashMap VS Hashtable(注意在這里table的第一個字母小寫)之間的區(qū)別有些類似于ArrayList和Vector,Hashtable是重量級的組件,在考慮并發(fā)的情況,對安全性要求比較高的時候使用。使用HashMap(),如果使用自定義類,一定要覆蓋HashCode()和equals()。Module8—12利用兩天的時間完成。即利用瀏覽器作為客戶端,因此對于圖形界面的要求已經(jīng)不高,現(xiàn)在的發(fā)展趨勢是不使用安裝,即不用任何的本地應(yīng)用,圖形很快就會被服務(wù)器構(gòu)件開發(fā)所取代。避免從事有這種特征的工作。Module8—Module11所使用的技術(shù)都將被JSF技術(shù)所取代。Module12的Applet技術(shù)也將被WebStart所取代。事件模型是重點。圖形界面的應(yīng)用分四步:① 選擇一個容器:⑴window:帶標(biāo)題的容器(如Frame);⑵Panel:面板通過add()想容器中添加組件。但是在調(diào)用了一個窗體之后只生成一個窗體,沒有事件的處理,關(guān)閉按鈕并不工作。②設(shè)置一個布局管理器:用setLayout();③向容器中添加組件;③ 添加組件的事務(wù)處理。在設(shè)置容易的時候不要忘記設(shè)置它們的可見性。(null)。五種布局管理器:P206:Flow Layout(流式布局):按照組件添加到容器中的順序,順序排放組件位置。排列的位置隨著容器大小的改變而改變。Border Layout:會將容器非常五個區(qū)域:東西南北中。//botton上的文字(b1,”North”)。Frame和Dialog的默認(rèn)布局管理器是Border Layout。 GridLayout(5,2,10,10)//表示條列格為5行2類,后面為格間距。使用first(),last(),next()可以決定哪個組件可見。重點:GridBag Layout:在Grid中可指定一個組件占據(jù)多行多列,GridBag的設(shè)置非常的煩瑣。對象1給對象2發(fā)送一個信息相當(dāng)于對象1引用對象2的方法。Java AWT事件模型也稱為授權(quán)事件模型,指事件可以和監(jiān)聽器之間事先建立一種關(guān)系:約定那些事件如何處理,由誰去進(jìn)行處理。一個事件源可以授權(quán)多個監(jiān)聽者(授權(quán)也稱為監(jiān)聽者的注冊);多個事件源也可以注冊多個事件監(jiān)聽器。:所有事件監(jiān)聽者都要實現(xiàn)這個接口。事件范例在\CoreJava\。下面程序建立監(jiān)聽功能://監(jiān)聽器接口要定義監(jiān)聽器所具備的功能,定義方法{ void WhatIdoWhenGirlHappy(EmotionEvent e)。}注意查看參考書:事件的設(shè)置模式,如何實現(xiàn)授權(quán)模型。重點:學(xué)會處理對一個事件源有多個事件的監(jiān)聽器(在發(fā)送消息時監(jiān)聽器收到消息的排名不分先后)。事件監(jiān)聽由兩個部分組成(接口和接口的實現(xiàn)類)。P235 ActionEvent。以及import .*注意兩者的不同。為了配合后面的實現(xiàn),我們必須將WindowsListener所有的方法都實現(xiàn),除了Windowsclosing方法,其余的方法均為空實現(xiàn)。)上面程序中實現(xiàn)了許多不必要的實現(xiàn)類,雖然是空實現(xiàn)。還有WindowAdapter類,它已經(jīng)實現(xiàn)了WindowsListener。注意:監(jiān)聽過多,會拋tooManyListener例外。TextArea:文本域。用CheckBoxGroup實現(xiàn)單選框功能。菜單:new MenuBar(),MenuBar表示菜單條。練習(xí):設(shè)計一個計算器:注意設(shè)置一個boolean值(append)來判斷輸入數(shù)字是位于第一個數(shù)的后面還是屬于輸入的第二個數(shù)。String number1Char operator 存放運(yùn)算符。Swing才是一種真正的圖形開發(fā)。注意AWT為重量級組件,相當(dāng)消耗資源,且不同系統(tǒng)的組件可能不同。更為要命的是:不同OS的組件庫都存在BUG。為解決以上問題,SUN和IBM以及NETSCAPE聯(lián)合開發(fā)出JAVA基礎(chǔ)類包Swing:注意JAVA的基礎(chǔ)類以Swing為核心。javax表示JAVA的擴(kuò)展。在Swing的組件中,基本上都是在AWT組件的名稱前面加“J”。好要加上:import .*以及import .*。已經(jīng)不是對等實體,與底層的OS無關(guān)。Jframe實際上是一堆窗體的疊加。,(b)。content是先申請面板。Jpanel支持雙緩沖技術(shù)。JscrollPane可以管理比屏幕還要大的組件。JeditorPane用于顯示瀏覽器。進(jìn)度條:ProgressBar。JlistPanel:選擇列表BorderPanel:設(shè)置邊框JsplitPanel:可將容器分為兩個部分,其中一個部分有Jtree。TextFileChoose:文件選擇器。工作四種語法:init(),start(),stop(),destory()。Applet消亡的原因:①java為安全起見對Applet有所限制:Applet不允許訪問本地文件信息、敏感信息,不能執(zhí)行本地指令(比如FORMAT),不能訪問初原服務(wù)器之外的其他服務(wù)器。Applet的優(yōu)勢:網(wǎng)絡(luò)傳輸,自動下載。WebStart:可在網(wǎng)絡(luò)傳輸,并且在本地?zé)o限制。練習(xí):使用Swing實現(xiàn)一個界面,分為上下兩個部分,南邊為JtextField組件,可編輯,上面為JtextArea組件,不可編輯,在JtextField組件輸入字符,按回車,就可以將內(nèi)容輸入到JtextArea組件。進(jìn)程的調(diào)度是有OS負(fù)責(zé)的(有的系統(tǒng)為獨(dú)占式,有的系統(tǒng)為共享式,根據(jù)重要性,進(jìn)程有優(yōu)先級)。JAVA在語言級支持多線程。參看P377線程由兩種實現(xiàn)方式:第一種方式:class MyThread extends Thread{ public void run(){ 需要進(jìn)行執(zhí)行的代碼,如循環(huán)。 ()。第二種方式:Class MyThread implements Runnable{ Public void run(){ Runnable target=new MyThread()。 ()。⑵線程休眠sleep()⑶()指停止main(),然后在某段時間內(nèi)將t1加入運(yùn)行隊列,直到t1退出,main()才結(jié)束。進(jìn)程的休眠:Thread sleep(1000)。Try{(1000)。}()表示運(yùn)行線程放棄執(zhí)行權(quán),進(jìn)入阻塞狀態(tài)。(不建議使用,因為不同操作系統(tǒng)的優(yōu)先級并不相同,使得程序不具備跨平臺性,這種優(yōu)先級只是粗略地劃分)。一個使用yield()就馬上交出執(zhí)行權(quán),回到可運(yùn)行狀態(tài),等待OS的再次調(diào)用。多線程的并發(fā)一般不是程序員決定,而是由容器決定。數(shù)據(jù)的不一致往往是因為一個線程中的兩個關(guān)聯(lián)的操作只完成了一步。Synchronized:這個修飾詞可以用來修飾方法和代碼塊Object obj。Synchronized用來修飾方法,表示當(dāng)某個線程調(diào)用這個方法之后,其他的事件不能再調(diào)用這個方法。注意:Synchronized一定使用在一個方法中。當(dāng)用Synchronized修飾某個方法的時候,表示該方法都對當(dāng)前對象加鎖。一個線程可以拿到多個鎖標(biāo)記,一個對象最多只能將monitor給一個線程。方法的Synchronized特性本身不會被繼承,只能覆蓋。每個對象都有自己的一個鎖池的空間,用于放置等待運(yùn)行的線程。鎖標(biāo)記如果過多,就會出現(xiàn)線程等待其他線程釋放鎖標(biāo)記,而又都不釋放自己的鎖標(biāo)記供其他線程運(yùn)行的狀況。死鎖的問題通過線程間的通信的方式進(jìn)行解決。線程間通信使用的空間稱之為對象的等待隊列,則個隊列也是屬于對象的空間的。等待隊列的狀態(tài)也是阻塞狀態(tài),只不過線程釋放自己的鎖標(biāo)記。進(jìn)入鎖池。注意:只能對加鎖的資源進(jìn)行wait()和notify()。注意鎖標(biāo)記是自己不會自動釋放,必須有通知。WHILE會放置程序饒過判斷條件而造成越界。恢復(fù)狀態(tài)的時候用resume()。這幾個方法上都有Deprecated標(biāo)志,說明這個方法不推薦使用。對于多線程一般每個線程都是一個循環(huán),如果中斷線程我們必須想辦法使其退出。用于對阻塞(或鎖池)會拋出例外Interrupted Exception。多線程中的重點:實現(xiàn)多線程的兩種方式,Synchronized,以及生產(chǎn)者和消費(fèi)者問題()。打印順序為12A34B56C……5152Z。注:分別給兩個對象構(gòu)造一個對象o,()。補(bǔ)充說明:通過Synchronized,可知Vector較ArrayList方法的區(qū)別就是Vector所有的方法都有Synchronized。同樣:Hashtable較HashMap也是如此。 輸出數(shù)據(jù)源JMV 輸入 注意:輸入/輸出是針對JVM而言。,但是無法讀取文件的內(nèi)容。前者是在虛擬機(jī)中創(chuàng)建了一個文件,但卻并沒有將它真正地創(chuàng)建到OS的文件系統(tǒng)中,隨著虛擬機(jī)的關(guān)閉,這個創(chuàng)建的對象也就消失了。例如:File f=new File(“”)。 //真正地創(chuàng)建文件():創(chuàng)建目錄();刪除文件()。對于命令:File f2=new file(“d:\\abc\\789\\”)這個命令不具備跨平臺性,因為不同的OS的文件系統(tǒng)很不相同。=new File()。使用文件下的方法的時候一定注意是否具備跨平臺性。使用isDirectory()和isFile()來判斷究竟是文件還是目錄。使用I/O流訪問file中的內(nèi)容。分類:按流分為輸入流和輸出流;按傳輸單位分為字節(jié)流和字符流;還可以分為節(jié)點流和過濾流。過濾流的構(gòu)造方式是以其他流位參數(shù)構(gòu)造(這樣的設(shè)計模式稱為裝飾模式)。Int read()
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1