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

正文內(nèi)容

算機(jī)網(wǎng)絡(luò)畢業(yè)論文java通信計算機(jī)網(wǎng)絡(luò)-文庫吧

2025-06-26 10:50 本頁面


【正文】 要有數(shù)據(jù)輸入,對輸入的數(shù)據(jù)進(jìn)行運(yùn)算后,再將數(shù)據(jù)輸出。在面向?qū)ο蟮某绦蛟O(shè)計語言中,用數(shù)據(jù)流來實現(xiàn)輸入和輸出。數(shù)據(jù)流是指一組有序的、有起點(diǎn)和終點(diǎn)的字節(jié)集合。 輸入流和輸出流 流是一個很形象的概念,當(dāng)程序需要讀 取數(shù)據(jù)時,就會開啟一個通向數(shù)據(jù)源的流,這個源可以是文件、內(nèi)存、或是網(wǎng)絡(luò)連接,則這就是輸入流( InputStream)。類似的,當(dāng)程序需要寫入數(shù)據(jù)的時候,就會開啟一個通向目的地的流,這就輸出流( OutputStream)。 Java 中的流分為兩種,一種是字節(jié)流,另一種是字符流,分別用四個抽象類來表示: InputStream,OutputStream, Reader, Writer。 Java 中其他多種多樣變化的流均是由它們派生出來的。 標(biāo)準(zhǔn)輸入輸出 標(biāo)準(zhǔn)輸入輸出是指在命令行方式下的輸入輸出方式。用鍵盤輸 入數(shù)據(jù)是標(biāo)準(zhǔn)輸入( stdin),以屏幕為對象的輸出是標(biāo)準(zhǔn)輸出( stdout)。還有以屏幕為對象的標(biāo)準(zhǔn)錯誤輸出( stderr)。 : in 是字節(jié)輸入流 InputStream 的對象,其中有 read 方法從鍵盤讀入數(shù)據(jù)。 :out 是 PrintStream 的對象,其中有 print 和 println 方法向屏幕輸出數(shù)據(jù)。這兩個方法支持任何類型的數(shù)據(jù)輸出,方法 println 在輸出數(shù)據(jù)后再輸出一個回車符。 和 一樣向屏幕輸出錯誤信息。 字節(jié) 流 Java 中的字節(jié)流是用于處理字節(jié)的輸入和輸出的,包括讀寫二進(jìn)制數(shù)據(jù)等方面的內(nèi)容。我們先來看下面兩個圖: 8 圖 1 InputStream 類結(jié)構(gòu)圖 圖 2 OutputStream 類結(jié)構(gòu)圖 從圖 1 中可以看出, InputStream 是所有字節(jié)輸入流的祖先,而圖 2 中的 OutputStream 是所有字節(jié)輸出流的祖先。它們都在 包中。 Java 虛擬機(jī)( Java Virtual Machine,即 JVM) Java 虛擬機(jī) (JVM)是可運(yùn)行 Java 代碼的假想計算機(jī)。只要根據(jù) JVM 規(guī)格描述 將解釋器移植到特定的計算機(jī)上,就能保證經(jīng)過編譯的任何 Java 代碼能夠在該系統(tǒng)上運(yùn)行 [5]。 Java 虛擬機(jī)有自己想象中的硬件 ,如處理器、堆棧、寄存器等 ,還具有相應(yīng)的指令系統(tǒng)。 Java 虛擬機(jī)首先翻譯 Java 源程序為字節(jié)碼(字節(jié)碼是與平臺無關(guān)的虛擬機(jī)的機(jī)器指令。),然后執(zhí)行翻譯所生成的子節(jié)代碼,屬于先解釋后執(zhí)行的方式,它類似一個小巧而高效的 CPU。 Java 字節(jié)代碼運(yùn)行有兩種方式:解釋方式和即時編譯。對于有些程序而言,采用解釋方式執(zhí)行程序,運(yùn)行速度會很慢。為了提高速度, Java 為每個系統(tǒng)都提供了可以直接把字節(jié)碼文件 編譯成可執(zhí)行的映像文件的變壓器, Java 把這類編譯器稱為即時編譯器( JIT),它們被捆綁在一些 Web 瀏覽器中。 Java 的面向網(wǎng)絡(luò)的核心就是 Java 虛擬機(jī),它支持 Java 面向網(wǎng)絡(luò)體系結(jié)構(gòu)三大支柱的所有方面:平臺無關(guān)性、安全性和網(wǎng)絡(luò)移動性。 3 J2ME 簡介與開發(fā)工具 Java 2 平臺的三種版本 Java 的早期版本稱為 JDK, Sun 公司在 版之后將其改名為 Java 2, Java 2 平臺的發(fā)布 9 被稱為是 Java 發(fā)展史的新里程碑,目前社會上流行的很多 Java 教程都是基于 Java 2 技術(shù)的。Java 2 平臺有三個不同的版本 :J2SE, J2EE, J2ME,其比較如表 1 所示。每個版本針對不同的應(yīng)用開發(fā)者和不同的運(yùn)行時環(huán)境 JRE(Java Runtime Environment) [6]。 J2SE(Java 2 Standard Edition, Java2 平臺標(biāo)準(zhǔn)版 )是 Java2 平臺中最基本的成員,是一組針對傳統(tǒng)桌面應(yīng)用的應(yīng)用編程接口和運(yùn)行時環(huán)境。 J2SE 使用 Java HotSpot 虛擬機(jī)來提高其性能,其類庫包含了 Java 語言的所有特性。 J2EE(Java 2 Enterprise Edition, Java 2 平臺企業(yè)版 )是 J2SE 的擴(kuò)展集,主要用于在服務(wù)器端開發(fā)可伸縮、可遷移、以數(shù)據(jù)庫為核心的企業(yè)應(yīng)用。它也使用 Java HotSpot 虛擬機(jī)。 J2ME( Java 2 Micro Edition, Java2 平臺微型版 )定義了一組針對嵌入式設(shè)備和消費(fèi)電子設(shè)備的 API 和運(yùn)行時環(huán)境。嵌入式設(shè)備包括無線手持設(shè)備如手機(jī)、 PDA、電視機(jī)頂盒等。因為這些設(shè)備內(nèi)存和處理器的限制, J2ME 所運(yùn)行類庫較小。 J2ME 是一種把 Java 語言應(yīng)用于嵌入式系統(tǒng)的軟件開發(fā)模式,因此擁有 Java 技術(shù)本身的各種特點(diǎn):平臺無關(guān)性、網(wǎng)絡(luò)安全性 等等。并且, J2ME 提供了 HTTP 高級 Inter 協(xié)議, 使手機(jī)等移動信息設(shè)備能以客戶端 /服務(wù)器的方式直接訪問 Inter 的全部信息,不同的客戶端訪問不同的文件,此外還能訪問本地存儲區(qū),實現(xiàn)交互式服務(wù)。 表 1 J2EE、 J2SE 和 J2ME 的應(yīng)用范圍 J2EE J2SE J2ME 用于高性能、大內(nèi)存服務(wù)器設(shè)備。適合分布式的、多用戶的、企業(yè)級應(yīng)用系統(tǒng)運(yùn)轉(zhuǎn)的平臺,以 J2SE為基礎(chǔ),增加了處理服務(wù)器端計算的功能。 用于桌面設(shè)備、 PC、筆記本。主要運(yùn)行在Unix、 Linux、 Microsoft Windows 等操作系統(tǒng)上。是針對傳統(tǒng)桌面應(yīng)用的 API 和運(yùn)行環(huán)境。 是為了支持像小型嵌入式設(shè)備或移動設(shè)備而制定的一系列的技術(shù)和規(guī)范的總稱。在提供類似的類庫的同時也對 J2SE中的類庫進(jìn)行了裁剪。 32bit 處理器,512KB 內(nèi)存 CDC 設(shè)備:機(jī)頂盒,智能家電 16bit 處理器, 128KB內(nèi)存,電池供電 CLDC 設(shè)備:智能手機(jī),PDA JVM CVM KVM 在這里,我們主要介紹 J2ME 的體系結(jié)構(gòu)的系統(tǒng)構(gòu)成以及相關(guān)技術(shù)。 J2ME體系結(jié)構(gòu) 為了滿足消費(fèi)者和嵌入式市場彈性和定制的需求, J2ME 體系結(jié) 構(gòu)采用模塊化、可擴(kuò)展的設(shè)計。 J2ME 體系的這種模塊化和可伸縮性是通過一個分層軟件模型來實現(xiàn)的,這個分層軟件模型是構(gòu)建于設(shè)備本地操作系統(tǒng)之上。下圖是 J2ME 的軟件分層體系結(jié)構(gòu) [7]。 10 J a v a 應(yīng) 用 P r o f i l e 簡 表 C o n f i g u r a t i o n 配 置 核 心 類 庫 J a v a 虛 擬 機(jī) 操 作 系 統(tǒng)系 統(tǒng) 硬 件 圖 3 J2ME 的軟件分層體系結(jié)構(gòu) 我們可以看出 J2ME 的核心是配置,在它里面定義了 Java 的虛擬機(jī),通過它來和底層的操作系統(tǒng)打交道。簡表提供了訪問設(shè)備的 IO 或者圖形界面的能力,配置和簡表共同構(gòu)成了J2ME 的體系結(jié)構(gòu),比如 CLDC/MIDP 可以提供給你開發(fā)手機(jī)程序的環(huán)境。 在簡表之上針對不同的設(shè)備還可以提供不同的可選開發(fā)包。 配置( Configuration) 配置是個規(guī)范,它定義了基本的 J2ME 運(yùn)行時環(huán)境,包括虛擬機(jī)和一組來自 J2SE 的核心類子集。配置是為一組 “水平 ”設(shè)備的分類( Grouping Of Devices,設(shè)備分組)所定義的最精簡的公共平臺,這些設(shè)備有著相近的處理器能力和內(nèi)存容量。這里將虛擬機(jī)的能力看作是配置的一部分,它運(yùn)行于本地操作系統(tǒng)之上,而本地操作系統(tǒng)又是目標(biāo)設(shè)備系統(tǒng)軟件的一部分。配置的主要目的是針對消費(fèi)性電子產(chǎn)品的網(wǎng)絡(luò)連接能力、處理器速度、 內(nèi)存等特性為之分類。每一個配置都對應(yīng)于一組具有相同或類似計算能力的設(shè)備。目前 J2ME 定義了兩種配置,它們分別是: CDC( Connected Devise Configuration 連接設(shè)備配置)和 CLDC( Connected Limited Device configuration 有限連接設(shè)備配置)。 連接設(shè)備配置 CDC CDC 由 Java 社團(tuán)的 JSR36 和 JSR218 定義,分別對應(yīng)于 和 兩個規(guī)范。典型的 CDC 目標(biāo)設(shè)備運(yùn)行 32 位微處理器,總內(nèi)存容量大約為 24MB。 CDC 目標(biāo)設(shè)備具有一個持續(xù)的、高帶寬的固定網(wǎng)絡(luò)連接,通常用的是 TCP/IP,也可以是間歇性的無線連接,但其帶寬有限。此外,這類設(shè)備有較強(qiáng)的用戶交互能力和穩(wěn)定而持續(xù)的電源供應(yīng)。 CDC 支持的設(shè)備典型例子有電視機(jī)頂盒( SetTop Box)、 Web TV、支持 Inter 的可視電話、高端的無線通信設(shè)備以及汽車導(dǎo)航與娛樂系統(tǒng)等。運(yùn)行在 CDC 上的程序稱為 J2ME Application,在 CVM 上進(jìn) 11 行解釋。 連接受限設(shè)備配置 CLDC CLDC 是 J2ME 的核心構(gòu)成部分之一。 Java 社團(tuán)的 JSR30 和 JSR139 分別 定義了 規(guī)范和 規(guī)范。 CLDC 是為具有較小存儲容量的設(shè)備而設(shè)計的。根據(jù)規(guī)范中所說,運(yùn)行 CLDC 的設(shè)備應(yīng)該有 512K 或更少的內(nèi)存空間、一個有限的電源供給 (通常是使用電池 )、有限的或斷斷續(xù)續(xù)的網(wǎng)絡(luò)連接性( 9600 bps 或更少)以及多樣化的用戶界面甚至沒有用戶界面。 通常說來,這個配置是為個人化的、移動的、有限連接信息設(shè)備而設(shè)計,比如手機(jī)、呼叫器、PDA 和 POS 終端等。 運(yùn)行在 CLDC 上的程序稱為 MIDlet。 CLDC 虛擬機(jī)的參考實現(xiàn)為 KVM,它并不是唯一的,其他公司的虛擬機(jī)只要滿足 相應(yīng)的 CLDC 里的定義,通過兼容性測試,一樣可以作為該配置的虛擬機(jī)。 由于我們準(zhǔn)備研究的對象是手機(jī),它是一種典型的 CLDC 設(shè)備,所以有必要對 CLDC 層進(jìn)行簡要介紹。 CLDC 為簡表層提供接口服務(wù),同時還可以直接為應(yīng)用程序?qū)犹峁┓?wù)。 CLDC 通過四個包為簡表層和應(yīng)用程序提供服務(wù),它包括語言服務(wù)、輸入輸出服務(wù)、網(wǎng)絡(luò)通訊服務(wù)和實用工具服務(wù)等。這些服務(wù)分別在以下四個包中實現(xiàn): (1) 語言包:此包是 J2SE 中的同名包的子集,繼承了 J2SE 語言包的大部分功能。但是,由于有限于設(shè)備的運(yùn)行資源, CLDC 不支持浮 點(diǎn)型數(shù)據(jù)類型,也不提供文件的支持和錯誤處理的支持。 (2) 輸入輸出包:此包是 J2SE 中的同名包的子集,向上層提供基本的 IO 服務(wù)。 (3) 實用工具包:此包是 J2SE 中的同名包的子集,它提供定時器、日期等常用的實用工具類,但是它沒有提供 Java 集合工具類。 (4) 網(wǎng)絡(luò)通訊包:此包是 CLDC 中唯一不是 J2SE 子集的包。它是專門為小型有限資源設(shè)備設(shè)計的,為其提供類似 J2SE 的網(wǎng)絡(luò)輸入輸出功能。 從上面對 CLDC 提供的四個包的說明可以看出,其實 CLDC 是 J2SE 的一個 子集,其大部分功能都是從 J2SE 中減化來的,同時,它還根據(jù)運(yùn)行設(shè)備的特性提供了附加的功能。 簡表( Profile) 簡表是建立在配置上的特定的 API 集合。配置只定義了虛擬機(jī)和基本的 API 集合,不定義建立應(yīng)用程序的細(xì)節(jié),這樣雖然保證了相同類別的不同設(shè)備間的平臺相容性,但是舍棄了設(shè)備的特殊性。然而,各種消費(fèi)類和嵌入式設(shè)備的特殊性是不容忽視的。簡表正是對配置的擴(kuò)展和補(bǔ)充,提供了配置所缺少的功能,包括應(yīng)用程序的生命周期、用戶界面、網(wǎng)絡(luò)連接、本地數(shù)據(jù)存儲、安全等。一個簡表既可以建立在配置上也可以直接建立 在另外一個簡表上。 由于各種消費(fèi)類和嵌入式設(shè)備功能的多樣性,導(dǎo)致了簡表的多樣性。目前 SUN 公司已經(jīng)提出的簡表有構(gòu)建于 CDC 基礎(chǔ)上的 Foundation Profile 及建立在 Foundation 之上的 RMI Profile 12 和 Personal Profile。還有構(gòu)建于 CLDC 基礎(chǔ)上的 MIDP( Mobile Information Device Profile 移動信息設(shè)備間表)和 PDA Profile。 移動信息設(shè)備簡表 MIDP MIDP 是位于 CLDC 上層的簡表,是目前 J2ME 平臺中發(fā)展最成熟、最廣為人所知 的簡表,主要針對在硬件特性上有諸多限制的移動信息設(shè)備( Mobile Information Device, MID),如手機(jī)、雙向?qū)ず魴C(jī)和 PDA 等。現(xiàn)在新的智能手機(jī)設(shè)備,如果支持 J2ME 都會選擇支持 MIDP。目前, Java 社團(tuán)( Java Community Process, JCP)為這類移動信息設(shè)備所定義的 MIDP 有兩個規(guī)范,即 JSR37 和 JSR118,分別對應(yīng)于 規(guī)范和 規(guī)范。 MIDP 規(guī)范中包括: (1) 應(yīng)用的下載 (2) 應(yīng)用的生命周期 (3) 端到端的傳輸協(xié)議,例如 HTTP (4) 網(wǎng)絡(luò)連接 (5) 持續(xù)性存儲 (6) 定時器 (7) 用戶界面 現(xiàn)在 MIDP 最新的規(guī)范為 , MIDP 新增加了以下內(nèi)容: (1) 應(yīng)用程序的下載和計費(fèi) (2) 在 HTTP 的基礎(chǔ)上提供了端到端的 SHTTP 安全傳輸 (3) 應(yīng)用程序的數(shù)字簽名和域的安全模式 (4) MIDlet 的 push 注冊 中要求目標(biāo)設(shè)備必須滿足以下最小特征: 內(nèi)存: 128KB 非易失性內(nèi)存(掉電后不會失去內(nèi)容的內(nèi)存)用于 MIDP 組件; 8K 非易失性內(nèi)存用于持久存儲數(shù)據(jù); 32KB 非易失性內(nèi)存用于運(yùn)行虛擬機(jī)。(注意:這里
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1