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

正文內(nèi)容

網(wǎng)絡(luò)五子棋的設(shè)計(jì)與實(shí)現(xiàn)-文庫(kù)吧

2025-07-30 15:58 本頁(yè)面


【正文】 Java 軟件是真正跨平臺(tái)可移植的。 多線程:允許一個(gè)應(yīng)用程序同時(shí)做多個(gè)任務(wù)。 動(dòng)態(tài)性: Java 允許下載代碼模塊,因 此,當(dāng)程序運(yùn)行時(shí)也能動(dòng)態(tài)升級(jí)。 高性能:經(jīng)過(guò)實(shí)際的綜合評(píng)測(cè)得出結(jié)論, Java 是高性能的。 Java 安裝配置: 各平臺(tái)安裝程序可以到 SUN 的網(wǎng)站上下載,在安裝完成后應(yīng)該進(jìn)行配置,通常集成開(kāi)發(fā)環(huán)境( IDE)自帶 JDK 或進(jìn)行了自動(dòng)配置,如果我們通過(guò)控制臺(tái)編譯或運(yùn)第二章 開(kāi)發(fā)工具 、 環(huán)境及其技術(shù) 4 行 Java 程序則必須手動(dòng)配置。 JDK: 是 Java 開(kāi)發(fā)工具包( J2SE Software Development Kit)的縮寫(xiě) ,用 Java語(yǔ)言編寫(xiě) applet 小程序和應(yīng)用程序的軟件開(kāi)發(fā)環(huán)境, Java 開(kāi)發(fā)者應(yīng)該安裝 JDK,并且通常 JDK中已包含一個(gè) JRE拷貝。 JRE: 是 Java運(yùn)行環(huán)境 (Java Runtime Enviroment) 的縮寫(xiě)。它基本上就和 Java虛擬機(jī)是同一個(gè)概念,運(yùn)行 Java 程序的應(yīng)該安裝 JRE。 圖 22 JDK 安裝目錄示例 bin: java 常用開(kāi)發(fā)工具目錄,例如 javac, java, jar 等工具。 demo: sun提供的一些用于 java 開(kāi)發(fā)的示范例子 ,如有關(guān) applets, jfc, plugin 等。 nclude: Java 提供用于 c/c++調(diào)用的 .h 文件; jre: 對(duì)應(yīng)版本的 java 運(yùn)行環(huán)境文件 sample: java 案例。 lib: java 類庫(kù)目錄 Windows 環(huán)境變量 應(yīng)設(shè)置的環(huán)境變量包括: JAVA_HOME, PATH, CLASSPATH。 假設(shè) J2DK 安裝在“ C:\”,環(huán)境變量可設(shè)置為: JAVA_HOME=C:\ CLASSPATH=. PATH=%JAVA_HOME%\BIN。%PATH% 南昌工程學(xué)院本 (專 )科畢業(yè)設(shè)計(jì) (論文 ) 5 圖 23 Windows下環(huán)境變量的設(shè)置 Java 中 線程 概念 : 1.線程的概念 一個(gè)關(guān)于計(jì)算機(jī)的簡(jiǎn)化的視圖是:它有一個(gè)執(zhí)行計(jì)算的處理機(jī)、包含處 理機(jī)所執(zhí)行的程序的 ROM(只讀存儲(chǔ)器,在 JAVA 中也叫堆棧 )、包含程序所要操作的數(shù)據(jù)的 RAM(隨機(jī)存儲(chǔ)器,在 JAVA 中也叫堆 )。在這個(gè)簡(jiǎn)化視圖中,只能執(zhí)行一個(gè)作業(yè)。一個(gè)關(guān)于最現(xiàn)代計(jì)算機(jī)比較完整的視圖允許計(jì)算機(jī)在同時(shí)執(zhí)行一個(gè)以上的作業(yè)。 你不需關(guān)心這一點(diǎn)是如何實(shí)現(xiàn)的,只需從編程的角度考慮就可以了。如果你要執(zhí)行一個(gè)以上的作業(yè),這類似有一臺(tái)以上的計(jì)算機(jī)。在這個(gè)模型中,線程(或執(zhí)行上下文),被認(rèn)為是帶有自己的程序代碼和數(shù)據(jù)的虛擬處理機(jī)的封裝。 類允許用戶創(chuàng)建并控制他們的線程。在單 CPU 的情況下,一個(gè)時(shí)刻只能運(yùn)行一個(gè)進(jìn)程,那么進(jìn)程在運(yùn)行時(shí),也只能運(yùn)行一個(gè)線程來(lái)代表該進(jìn)程的執(zhí)行。 進(jìn)程是正在執(zhí)行的程序。一個(gè)或更多的線程構(gòu)成了一個(gè)進(jìn)程(操作系統(tǒng)是以進(jìn)程為單位的,而進(jìn)程是以線程為單位的,進(jìn)程中必須有一個(gè)主線程)。一個(gè)線程(執(zhí)行上下文)由三個(gè)主要部分組成: 一個(gè)虛擬 CPU 第二章 開(kāi)發(fā)工具 、 環(huán)境及其技術(shù) 6 CPU 執(zhí)行的代碼 代碼操作的數(shù)據(jù) 如圖所示 圖 24 線程的組成 代碼可以由多個(gè)線程共享,它不依賴數(shù)據(jù)。如果兩個(gè)線程執(zhí)行同一個(gè)類的實(shí)例的代碼時(shí),則它們可以共享相同的代碼。 類 似地,數(shù)據(jù)可以由多個(gè)線程共享,而不依賴代碼。如果兩個(gè)線程共享對(duì)一個(gè)公共對(duì)象的訪問(wèn),則它們可以共享相同的數(shù)據(jù)。 在 Java 編程中,虛擬處理機(jī)封裝在 Thread 類的一個(gè)實(shí)例里。構(gòu)造線程時(shí),定義其上下文的代碼和數(shù)據(jù)是由傳遞給它的構(gòu)造函數(shù)的對(duì)象指定的。 Java 線程分守護(hù)線程和用戶線程,由創(chuàng)建時(shí)設(shè)置。 線程狀態(tài)和調(diào)度 在 Java 中,線程的調(diào)度是基于時(shí)間片基礎(chǔ)上的優(yōu)先級(jí)優(yōu)先原則 。 搶占式調(diào)度模型 (優(yōu)先級(jí)優(yōu)先 )是指可能有多個(gè)線程是可運(yùn)行的,但只有一個(gè)線程在實(shí)際運(yùn)行。這個(gè)線程會(huì)一直運(yùn)行,直至它不再是可運(yùn)行的 (運(yùn)行時(shí)間到,時(shí)間片原則,或者,另一個(gè)具有更高優(yōu)先級(jí)的線程搶占,優(yōu)先級(jí)優(yōu)先原則 )。對(duì)于后面一種情形,低優(yōu)先級(jí)線程被高優(yōu)先級(jí)線程搶占了運(yùn)行的機(jī)會(huì)。 線程的代碼可能執(zhí)行了一個(gè) ()調(diào)用,要求這個(gè)線程暫停一段固定的時(shí)間。這個(gè)線程可能在等待訪問(wèn)某個(gè)資源,而且在這個(gè)資源可訪問(wèn)之前,這個(gè)線程無(wú)法繼續(xù)運(yùn)行。 所有可運(yùn)行線程根據(jù)優(yōu)先級(jí)保存在池中。當(dāng)一個(gè)被阻塞的線程變成可運(yùn)行時(shí),它會(huì)被放回相應(yīng)的可運(yùn)行池。優(yōu)先級(jí)最高的非空池中的線程會(huì)得到處理機(jī)時(shí)南昌工程學(xué)院本 (專 )科畢業(yè)設(shè)計(jì) (論文 ) 7 間 (被運(yùn)行 )。 一個(gè) Thread 對(duì)象在它的生命周期中會(huì)處于各種不同的狀態(tài)。 下圖形象地說(shuō)明了這點(diǎn): 圖 25 線程的生命周期 線程進(jìn)入 可運(yùn)行 狀態(tài),并不意味著它立即開(kāi)始運(yùn)行。在一個(gè)只有一個(gè) CPU 的機(jī)器上,在一個(gè)時(shí)刻只能進(jìn)行一個(gè)動(dòng)作。(下節(jié)將描述:如果有一個(gè)以上可運(yùn)行線程時(shí),系統(tǒng)如何分配 CPU。) 因?yàn)?Java 線程是搶占式的,所以你必須確保你的代碼中的線程會(huì)不時(shí)地給其它線程運(yùn)行的機(jī)會(huì)。這可以通過(guò)在各種時(shí)間間隔中發(fā)出 sleep()調(diào)用來(lái)做到。 Socket 機(jī)制 : 基于 Java 的網(wǎng)絡(luò)技術(shù) TCP/IP 套接字 套接字是網(wǎng)絡(luò)軟件中的一個(gè)抽象概念,套接字允許單個(gè)計(jì)算機(jī)同時(shí)服務(wù)于很多不同客戶,并能夠提供不同類型信息的服務(wù)。該技術(shù)由引入的端口處理,該端第二章 開(kāi)發(fā)工具 、 環(huán)境及其技術(shù) 8 口既是一個(gè)特定機(jī)器上的一個(gè)被編號(hào)的套接字 通信端口 .TCP/IP 套接字用于在主機(jī)和 Inter 之間建立的可靠、雙向、點(diǎn)對(duì)點(diǎn)、持續(xù)的流式連接。 在 java 中, TCP/IP Socket 連接是用 包中的類實(shí)現(xiàn)的,這些類實(shí)現(xiàn)了建立網(wǎng)絡(luò)連接和通過(guò)連接發(fā)送數(shù)據(jù)的復(fù)雜過(guò)程,我們只需使用其簡(jiǎn)單接口 就能實(shí)現(xiàn) 網(wǎng) 絡(luò) 通 信 ! 在 java 中 有 兩 類 套 接 字 , 一 種 是 服 務(wù) 器 端 套 接 字,另一種是客戶端套接字 。 ServerSocket 其中, ServerSocket 被設(shè)計(jì)成在等待客戶建立連接之前不做任何事情的監(jiān)聽(tīng)器,構(gòu)造方法的版本如下: public ServerSocekt(int port) throws IOException 在服務(wù)器指定端口 port 創(chuàng)建隊(duì)列長(zhǎng)度為 50的服務(wù)器套接字,當(dāng) port 為 0 則代表創(chuàng)建一個(gè)基于任意可用端口的服務(wù)器 套接字。隊(duì)列長(zhǎng)度告訴系統(tǒng)多少與之連接的客戶在系統(tǒng)拒絕連接之前可以掛起。 public ServerSocekt(int port, int maxQueue) throws IOException 在指定端口創(chuàng)建指定隊(duì)列長(zhǎng)度的服務(wù)器套接字 public ServerSocket(int port, int maxQueue, IAddress bindAddr ) throws IOException 在多地址主機(jī)上,我們除了可以指定端口之外,還可以通過(guò) IAddress 類來(lái)指定該套接字約束的 IP地址。 IAddress 在后面將學(xué)習(xí)。 ServerSocket 還定義了以下一些常用的方法: public Socket accept() throws IOException 該方法用于告訴服務(wù)器不停地等待,直到有客戶端連接到該 ServerSocket指定的端口,一旦有客戶端通過(guò)網(wǎng)絡(luò)向該端口發(fā)送正確的連接請(qǐng)求,該方法就會(huì)返回一個(gè)表示服務(wù)器與客戶端連接已建立的 Socket 對(duì)象,接下來(lái)我們就可以通過(guò)這個(gè)返回的 Socket 對(duì)象實(shí)現(xiàn)服務(wù)器與指定客戶端的通信。注意: accept()方法會(huì)讓服務(wù)器中的當(dāng)前 線程暫停下來(lái),直到有客戶端的正確連接發(fā)送過(guò)來(lái)。 public void bind(SocketAddress endpoint) throws IOException 綁定該 ServerSocket 到指定的 endpoint 地址 (IP地址和端口 ) public void close() throws IOException 南昌工程學(xué)院本 (專 )科畢業(yè)設(shè)計(jì) (論文 ) 9 關(guān)閉當(dāng)前 ServerSocket。任何當(dāng)前被鎖定的線程將在 accept()方法中拋出IOException。 從 開(kāi)始, java 提供了關(guān)于 ServerSocket 的 ServerSocketChannel, jdk建議用管道來(lái)實(shí)現(xiàn)客戶端連接的監(jiān)聽(tīng)以及關(guān)閉服務(wù)器套接字會(huì)更安全,因此,現(xiàn)在我們應(yīng)該通過(guò) ServerSocket 來(lái)得到其套接字管道,通過(guò)管道來(lái)實(shí)現(xiàn)服務(wù)監(jiān)聽(tīng)以 及 關(guān)閉 ,可 以 通過(guò) ServerSocket 的 getChannel()方 法 來(lái)得 到當(dāng) 前ServerSocket 的相關(guān)管道。 Socket 該類為建立連向服務(wù)器套接字及啟動(dòng)協(xié)議交換而設(shè)計(jì),當(dāng)進(jìn)程通過(guò)網(wǎng)絡(luò)進(jìn)行通信的時(shí)候, java 技術(shù)使用流模型來(lái)實(shí)現(xiàn)數(shù)據(jù)的通信。一個(gè) Socket 包括兩個(gè)流,分別為一個(gè)輸入流和一個(gè)輸出流,一個(gè)進(jìn)程如 果要通過(guò)網(wǎng)絡(luò)向另一個(gè)進(jìn)程發(fā)送數(shù)據(jù),只需簡(jiǎn)單地寫(xiě)入與 Socket 相關(guān)聯(lián)的輸出流,同樣,一個(gè)進(jìn)程通過(guò)從與 Socket相關(guān)聯(lián)的輸入流來(lái)讀取另一個(gè)進(jìn)程所寫(xiě)的數(shù)據(jù)。如果通過(guò) TCP/IP 協(xié)議建立連接,則服務(wù)器必須運(yùn)行一個(gè)單獨(dú)的進(jìn)程來(lái)等待連接,而某一客戶機(jī)必須試圖到達(dá)服務(wù)器,就好比某人打電話,必須保證另一方等待電話呼叫,這樣才能實(shí)現(xiàn)兩人之間的通信。 Java 開(kāi)發(fā) 工具 開(kāi)發(fā)工具 JBuilder 簡(jiǎn)介 中文名稱 : JBuilder 2020 企業(yè)完整版 英文名稱 : Borland JBuilder Enterprise 2020 版本 : 2020 發(fā)行時(shí)間 : 2020 年 09月 地區(qū) :美國(guó) 語(yǔ)言 :英語(yǔ) 簡(jiǎn)介 : 第二章 開(kāi)發(fā)工具 、 環(huán)境及其技術(shù) 10 圖 26 JBuilder 啟動(dòng)界面 Borland JBuilder開(kāi)發(fā)環(huán) 境是 Borland 用于 Java 平臺(tái)的應(yīng)用程序生命周期管理技術(shù)套件的關(guān)鍵部分。 其被設(shè)計(jì)用來(lái)為開(kāi)發(fā)小組提供所需的開(kāi)發(fā)工具,以便在企業(yè)應(yīng)用程序開(kāi)發(fā)過(guò)程中獲得最大的生產(chǎn)力,提供了下一代的解決方案,使得開(kāi)發(fā)小組能夠做更多的工作:減少開(kāi)發(fā)成本,交付一致的、高品質(zhì)的應(yīng)用,縮短產(chǎn)品上市的時(shí)間。 事實(shí)上,在享有盛名的 JBuilder IDE 之內(nèi),開(kāi)發(fā)者能夠在從設(shè)計(jì)到分發(fā)的全部應(yīng)用程序開(kāi)發(fā)生命周期中成為主要角色。 使用省時(shí)的工具加速 Java 的開(kāi)發(fā) Jbuilder 的設(shè)計(jì)能夠幫助開(kāi)發(fā)者與開(kāi)發(fā)小組提高效率,縮短產(chǎn)品上市 時(shí)間,提供清晰的投資回報(bào)。無(wú)論對(duì)于初出茅廬的新手還是經(jīng)驗(yàn)豐富的開(kāi)發(fā)者來(lái)說(shuō),Jbuilder 都能為他們提供創(chuàng)新性工具,能夠顯著提高開(kāi)發(fā)小組的生產(chǎn)力。 這些創(chuàng)新性工具包括新型 Struts 設(shè)計(jì)工具與 Web 業(yè)務(wù)設(shè)計(jì)工具,能夠加速企業(yè) Java 應(yīng)用程序的上市時(shí)間。在世界數(shù)千個(gè)軟件實(shí)施項(xiàng)目中, JBuilder 為首選軟件,用來(lái)加速 Enterprise JavaBeans (EJB )、 Web、 XML、 Web 業(yè)務(wù)、移動(dòng)與數(shù)據(jù)庫(kù)應(yīng)用程序的開(kāi)發(fā),支持面向領(lǐng)先的 J2EE 平臺(tái)應(yīng)用服務(wù)器的快速分發(fā)。 使用集成的小組開(kāi)發(fā)環(huán)境, 實(shí)現(xiàn)小組生產(chǎn)力的最大化 JBuilder 使用提高小組生產(chǎn)力與效率的增強(qiáng)技術(shù),可以使 Java 開(kāi)發(fā)小組生成可靠的、企業(yè)級(jí)應(yīng)用,并且速度很快,從而提高了開(kāi)發(fā)小組(包括分布于多個(gè)地方的大型小組)的生產(chǎn)力。 有了 JBuilder,開(kāi)發(fā)者就可以在集成的、可升級(jí)的、可擴(kuò)展的小組環(huán)境中進(jìn)行工作,從而簡(jiǎn)化源代碼的并行管理,對(duì)于提高效率來(lái)說(shuō)好處十分明顯。 JBuilder 南昌工程學(xué)院本 (專 )科畢業(yè)設(shè)計(jì) (論文 ) 11 技術(shù)有助于開(kāi)發(fā)小組理解并經(jīng)濟(jì)地復(fù)用現(xiàn)有的代碼部件,這意味著開(kāi)發(fā)者能夠更加高效地利用時(shí)間,對(duì)具有類似功能的多個(gè)實(shí)例只需進(jìn)行一次編碼。 減少開(kāi)發(fā)的風(fēng)險(xiǎn)與成本 —— 一直到分發(fā) JBuilder 是一個(gè)靈活的、開(kāi)放式解決方案,用來(lái)開(kāi)發(fā)并分發(fā) Java 應(yīng)用程序,賦予您選擇所偏愛(ài)開(kāi)發(fā)平臺(tái)及版本控制系統(tǒng)的自由,您的業(yè)務(wù)不再遭受與供應(yīng)商鎖定相關(guān)的、不斷升級(jí)的費(fèi)用的困擾。 JBuilder 與多種業(yè)界領(lǐng)先的應(yīng)用服務(wù)器的緊密集成讓您能夠?qū)δ龀龅募夹g(shù)決定進(jìn)行控制,這些應(yīng)用服務(wù)器包括 Borland 企業(yè)服務(wù)器, BEA WebLogic Server , JBoss , IBM WebSphere , Oracle9i 應(yīng)用服務(wù)器, Sybase EAServer 與Sun ONE 應(yīng)用服務(wù)器 。這樣,隨著業(yè)務(wù)的發(fā)展,如果
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1