Java keeles kirjutada rakendusi, mis kasutavad suurimaid eeliseid on, et "koostamiseks, joosta igal pool", kuid see ei tähenda, et kõik Java programme platvormiülene funktsioone, kuigi tegelikult suure osa Java programm ei ole teistes operatsioonisüsteemidesõigesti, siis kuidas on võimalik kirjutada tõeliselt platvormiülene Java programmi?Järgnevalt on ettevalmistamisel platvormiülene Java programme on mõned asjad meeles:
Ettevalmistamine platvormiülene Java, saate valida JDK1.0, 1.1,1.2 või toetada nende GUI arendamise vahendid, näiteks: JBuilder, Visual Age Java jne, vaid peab pöörama tähelepanu oma Java programmi saab kasutada ainult Java tuum API paketidKui soovid kasutada kolmanda osapoole raamatukogu pakett, raamatukogu peaks paketi poolt välja töötatud Java tuum paketid ja töökorra vabastamiseks, kui teil on toetada Java klassi raamatukogu paketid JVM avaldada.Teisisõnu, teie programm vajab 100% puhas Java.Nagu näiteks Visual J + + ei ole puhas Java, Visual J + + programm ei saa kirjutada platvormist sõltumatu.
Kas te kasutate JDK või muude tööriistade areng kompileerimise ajal Valikud peaks olema avatud kõigile hoiatusi, nii et tõlkija saab nii palju kui võimalik kinnitus, et platvorm ning annab hoiatuse.Kuigi ei ole compile-aeg hoiatusi ei saa garanteerida, et viga tuleb platvormiülene programmi, kuid protseduur on väga valesti hoiatused võivad olla mitte-platvormist sõltumatu.
Programmi kasutades mõni meetod, uurida dokumenti, veenduge, et kasutate meetod ei ole märgitud dokument on aegunud meetodid on (iganenud meetod), samuti ei ole see kaudne dokumendis ei ole märgitud meetod (Dokumentideta meetod).
Püüa mitte lahkuda Java programmi väljumise meetodit kasutada java.lang.System.Exit kuidas lõpetada JVM lõpetada programmi, kuid kui sõita teise Java programm, kasutage väljumise meetod võimaldab programm on suletud, mis ilmselt ei ole see, mida me tahame näha.Väljumiseks Java programm tegelikult, saab kasutada destory () väljumist omaette protsess.Mitme keermestatud programme, peame välja lülitada kõik mitte-daemon teemat.Ainult siis, kui programm lõpetas ainus võimalus programmist väljumiseks kasutades väljumist.
Vältige kohalike meetodite ja kohalike koodid, nii palju kui võimalik kirjutada oma funktsioone koos vastavate Java klass, alistada seda meetodit.Kui peate kasutama native meetoditega, võite kirjutada server programm nõuab meetodil, ja siis programm hakkab kirjutama server programmi klientprogramm, või lugeda CORBA (Common Object Request Broker) programmi struktuuri.
Java, Delphi sarnaselt winexec, java.lang.runtime klassi exec meetodit meetod ise on sõltumatu platvormi, kuid meetod kõne käsk ja käsu parameetrid on seotud platvormileSeega, programmide koostamine, et vältida, kui me tahame, et helistada teistesse programmidesse, nad peavad lase kasutajal määrata käsu ja selle parameetrid.Näiteks võite helistada notepad.exe on aknad menetlust tuleks kõne vi linux programmis.
Programmeerimine kõik andmed kood on kasutada ASCII kooditabel, sest mitte kõik operatsioonisüsteemid toetavad Unicode kooditabel, mis eri alustel Java programmid ei saa öelda, Hiina tarkvara on suur halb uudis.
Ärge kõvasti kodeeritud programmi tahes konstandid seotud platvormiga, nagu rida eraldaja, faili eraldaja, tee eraldaja jne, neid konstante on erinevad erinevatel platvormidel, nagu näiteks fail eraldaja, on UNIX ja MAC"/" Windows on "", kui soovite kasutada neid konstante, peate jdava.util.Properties klassi getProperty meetodeid, nagu java.util.Properties.getProperty ("file.separator") võib saada fail eraldaja,getProperty ("line.separator") tagastab rea eraldaja, getProperty ("path.separator") edasi-tagasi tee eraldaja.
Ettevalmistamisel platvormiülene veebirakendusi, ärge kasutage java.net.InetAddress klassi gethostname saadud hostinimi, nagu hostinimi eri platvormi formaat on erinevad, on seda parem kasutada sama vormi getAddress IP-aadress, teine on programmiKõik hostinimi tuleks asendada IP-aadressi, näiteks www.javafan.net vaja asendada vastava IP-aadressi.
Seotud kord Failioperatsioonid Märkus: Ärge kõvasti kodeeritud programmi faili tee ja 8, samadel põhjustel, kuid see on eriti tähtis, nii eraldi.Lisaks erinevate platvormide kasutada failinime tähemärki ja maksimaalne faili nime pikkus nõuded on erinevad, aega kirjutada oma programmi kasutada üldist iseloomu ASCII kood faili nimi ning seda ei saa platvorm sama nimega juba olemas programm, vastasel juhulkonflikti.
Kui teie programm on GUI programmi kirjutatud kasutamine AWT osi ei saa meelevaldselt kehtestatud suuruse ja asukoha komponent peaks kasutama Java paigutuse manager (paigutus manager) luua ja hallata suurust ja asukohta visuaalsete komponentide võipaigutus võib tekitada segadust.
Kuna erinevad operatsioonisüsteemid, erinevate masinatega, süsteem toetab värvi ja ekraani suurus ning resolutsioon on erinevad, kuidas saada neid omadusi?Klass saavad nõutud kasutamise java.awt.Systemcolor värvi, näiteks aknaraamid selle klassi inactiveCaption on taustavärvist sündmus pealkiri, menüü menüü tausta värvi.GetScreenResolution saab kasutada java.awt.Toolkit "pixels per inch" plokkidena ekraan resolutsiooniga.GetScreenSize klassi saan ekraani suurus (tollides), loadSystemColors võib loetleda kõik süsteemi värve.
Mõned neist kaalutlused viited, mõned tema pikaajaline kogemus kirjalikult Java programme, usun oma programm aitab disain