編寫(xiě)跨平臺(tái)的Java程序注意事項(xiàng)_第1頁(yè)
編寫(xiě)跨平臺(tái)的Java程序注意事項(xiàng)_第2頁(yè)
編寫(xiě)跨平臺(tái)的Java程序注意事項(xiàng)_第3頁(yè)
編寫(xiě)跨平臺(tái)的Java程序注意事項(xiàng)_第4頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

本文格式為Word版,下載可任意編輯——編寫(xiě)跨平臺(tái)的Java程序注意事項(xiàng)編寫(xiě)跨平臺(tái)的Java程序留神事項(xiàng)

Java語(yǔ)言的跨平臺(tái)性是它的特征,在編寫(xiě)應(yīng)用程序時(shí)可以“一次編譯,四處運(yùn)行”。下面是關(guān)于編寫(xiě)跨平臺(tái)的Java程序留神事項(xiàng),接待閱讀!

1.編寫(xiě)Java跨平臺(tái)應(yīng)用程序時(shí),你可以選擇JDK1.0,1.1,1.2或支持它們的GUI開(kāi)發(fā)工具如:Jbuilder,VisualAgeforJava等等,但是務(wù)必提防你的Java程序只能使用Java核心API包,假使要使用第三方的類(lèi)庫(kù)包,那么該類(lèi)庫(kù)包也要由Java核心包開(kāi)發(fā)完成,否那么在發(fā)布你的程序的時(shí)候還得將支持該Java類(lèi)庫(kù)包的JVM發(fā)布出去。也就是說(shuō),你的程序需要是100%純Java的。

2.無(wú)論你使用的是JDK或其他開(kāi)發(fā)工具,在編譯時(shí)都要開(kāi)啟全體的警告選項(xiàng),這樣編譯器可以盡可能多的察覺(jué)平臺(tái)相關(guān)的語(yǔ)句,并給出警告。雖然不能保證沒(méi)有編譯時(shí)警告錯(cuò)誤的程序確定是跨平臺(tái)的,但含有警告錯(cuò)誤的程序卻很有可能是非平臺(tái)無(wú)關(guān)的。

3.在程序中使用任何一個(gè)方法的時(shí)候,要概括觀測(cè)文檔,確保你使用的方法不是在文檔中已經(jīng)申明為過(guò)時(shí)的方法,Deprecatedmethod也不是文檔中未標(biāo)明的隱含方法Undocumentedmethod。

4.退出Java程序時(shí)盡量不要使用java.lang.System的exit方法。Exit方法可以終止JVM,從而終止程序,但假使同時(shí)運(yùn)行了另一個(gè)Java程序,使用exit方法就會(huì)讓該程序也關(guān)閉,這鮮明不是我們夢(mèng)想看到的處境。事實(shí)上要退出Java程序,可以使用destory退出一個(gè)獨(dú)立運(yùn)行的過(guò)程。對(duì)于多線程程序,務(wù)必要關(guān)閉各個(gè)非守護(hù)線程。只有在程序非正常退出時(shí),才使用exit方法退出程序。

5.制止使用本地方法和本地代碼,盡可能自己編寫(xiě)具有相應(yīng)功能的Java類(lèi),改寫(xiě)該方法。假使確定要使用該本地方法,可以編寫(xiě)一個(gè)服務(wù)器程序調(diào)用該方法,然后將現(xiàn)在要編寫(xiě)的程序作為該服務(wù)器程序的客戶(hù)程序,或者考慮CORBA公共對(duì)象苦求代理程序布局。

6.Java中有一個(gè)類(lèi)似于Delphi中的winexec的方法,java.lang.runtime類(lèi)的exec方法,作為該方法本身是具有平臺(tái)無(wú)關(guān)性的,但是給方法所調(diào)用的命令及命令參數(shù)卻是與平臺(tái)相關(guān)的,因此,在編寫(xiě)程序時(shí)要制止使用,假使確定要調(diào)用其他的程序的話,務(wù)必要讓用戶(hù)自己來(lái)設(shè)置該命令及其參數(shù)。譬如說(shuō),在windows中可以調(diào)用notepad.exe程序,在Linux中就要調(diào)用vi程序了。

7.程序設(shè)計(jì)中的全體的信息都要使用ASCII碼字符集,由于并不是全體的操作系統(tǒng)都支持Unicode字符集。

8.在程序中不要硬性編碼與平臺(tái)相關(guān)的任何常量,譬如行分隔符,文件分隔符,路徑分隔符等等,這些常量在不同的平臺(tái)上是不同的,譬如文件分隔符,在UNIX和MAC中是“/”,在windows中是“”,假使要使用這些常量,需要使用jdava.util.Properties類(lèi)的getProperty方法,如java.util.Properties.getProperty“file.separator”可以獲得文件分隔符,getProperty“l(fā)ine.separator”返回行分隔符,getProperty“path.separator”返回路徑分隔符。

9.在編寫(xiě)跨平臺(tái)的網(wǎng)絡(luò)程序時(shí),不要使用.InetAddress類(lèi)的getHostName方法得到主機(jī)名,由于不同的平臺(tái)的主機(jī)名格式是不同的,最好使用getAddress得到格式一致的IP地址,另外,程序中全體的主機(jī)名都要換成IP地址。

10.涉及文件操作的程序需要提防:不要在程序中硬性編碼文件路徑,理由和8中一樣,只是這一點(diǎn)非凡重要,因此單獨(dú)提出。而且,不同平臺(tái)對(duì)于文件名使用的字符及最大文件名長(zhǎng)度的要求不同,編寫(xiě)你的`程序的時(shí)候要使用一般的ASCII碼字符作為文件的名字,而且不能與平臺(tái)中已存在的程序同名,否那么會(huì)造成沖突。

11.假使您寫(xiě)的程序是GUI程序,在使用AWT組件時(shí)不能硬性設(shè)置組件的大小和位置而理應(yīng)使用Java的布局治理器layoutmanager來(lái)設(shè)置和治理可視組件的大小和位置,否那么有可能造成布局混亂。

12.由于不同的操作系統(tǒng),不同的機(jī)器,系統(tǒng)支持的顏色和屏幕的大小和辨識(shí)率都不同,如何獲得這些屬性呢?使用java.awt.Systemcolor類(lèi)可以獲得需要的顏色,如該類(lèi)的inactiveCaption

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論