Senior JAWA pemrograman: cross-platform program yang ditulis catatan



bahasa Jawa untuk menulis aplikasi yang menggunakan keuntungan terbesar adalah bahwa "kompilasi, jalankan di mana-mana", tetapi ini tidak berarti bahwa semua program Java adalah cross-platform fitur, pada kenyataannya, sebagian besar dari program Java tidak dalam sistem operasi lainbenar, maka bagaimana bisa menulis benar-benar cross-platform program java?Berikut ini adalah persiapan cross-platform Java program adalah beberapa hal yang perlu diperhatikan:

Penyusunan aplikasi Java cross-platform, Anda dapat memilih untuk JDK1.0, 1.1,1.2, atau dukungan mereka alat GUI pembangunan seperti: JBuilder, Visual Umur untuk Java, dll, tapi harus memperhatikan program Java Anda hanya dapat menggunakan paket-paket inti Java APIJika Anda ingin menggunakan paket library pihak ketiga, perpustakaan harus paket yang dikembangkan oleh paket-paket inti Jawa, atau prosedur untuk melepaskan bila Anda memiliki dukungan dari paket perpustakaan kelas Jawa JVM publikasikan.Dengan kata lain, program Anda harus 100% murni Jawa.Sebagai contoh, Visual J + + tidak murni Java, Visual J + + program tidak dapat ditulis dalam platform-independen.

Apakah Anda menggunakan JDK atau alat pembangunan lainnya, pada opsi kompilasi waktu harus membuka semua peringatan, sehingga compiler dapat ditemukan sebagai platform-laporan terkait, dan memberikan peringatan.Meskipun tidak ada waktu kompilasi peringatan tidak dapat menjamin bahwa kesalahan harus cross-platform program, tetapi prosedur ini sangat keliru dengan peringatan mungkin non-platform-independen.

Dalam program bila menggunakan metode satu, untuk melihat ke dalam dokumen, pastikan Anda menggunakan metode ini tidak tercantum dalam dokumen adalah metode usang telah (metode digunakan), juga bukan implisit dalam dokumen tidak menunjukkan metode (metode berdokumen).

Cobalah untuk tidak keluar dari metode keluar dari program Java untuk menggunakan java.lang.System.cara Keluar untuk mengakhiri JVM, untuk mengakhiri program, tetapi jika menjalankan program lain Java, menggunakan metode keluar akan memungkinkan program telah ditutup, yang jelas tidak apa yang ingin kita lihat.Untuk keluar dari program Java pada kenyataannya, Anda dapat menggunakan Hancurkan () keluar dari proses yang berdiri sendiri.Untuk program multi-threaded, kita harus menonaktifkan semua thread non-daemon.Hanya pada saat program keluar satunya cara untuk keluar dari program menggunakan pintu keluar.

Hindari menggunakan metode lokal dan kode lokal, sejauh mungkin untuk menulis fungsi-fungsi anda sendiri dengan kelas Java yang sesuai, override metode ini.Jika Anda harus menggunakan metode yang asli, Anda dapat menulis sebuah program server memanggil metode, dan kemudian program sekarang akan menulis program server sebagai sebuah program klien, atau mempertimbangkan CORBA (Common Object Request Broker) struktur program.

Java, Delphi di winexec cara yang sama, metode exec java.lang.runtime kelas sebagai metode itu sendiri tidak tergantung pada platform, tetapi metode untuk memanggil perintah dan parameter perintah yang berhubungan dengan platformOleh karena itu, dalam penyusunan program untuk menghindari, jika kita ingin memanggil program lain, mereka harus membiarkan pengguna untuk mengatur perintah dan parameternya.Sebagai contoh, Anda dapat menghubungi notepad.exe dalam prosedur jendela harus memanggil vi di linux dalam program ini.

Pemrograman semua informasi dalam kode harus menggunakan set karakter ASCII, karena tidak semua sistem operasi mendukung set karakter Unicode, yang untuk cross-platform Java program tidak dapat dikatakan perangkat lunak China adalah berita buruk yang besar.

Jangan keras dikodekan dalam program ini, setiap konstanta yang berhubungan dengan platform, seperti garis pemisah, pemisah berkas, pemisah jalan, dll, dalam konstanta yang berbeda pada platform yang berbeda, seperti pemisah file, ada di UNIX dan MAC"/" dalam jendela adalah "", jika Anda ingin menggunakan konstanta, Anda perlu jdava.util.Properties getProperty metode kelas, seperti java.util.Properties.getProperty ("file.separator") bisa mendapatkan pemisah file,getProperty ("line.separator") mengembalikan garis pemisah, getProperty ("path.separator") kembali jalur pemisah.

Dalam penyusunan aplikasi web lintas-platform, jangan gunakan getHostName kelas java.net.InetAddress memperoleh nama host, sebagai nama host format platform yang berbeda berbeda, akan lebih baik untuk menggunakan format yang sama getAddress alamat IP, yang lain, programSemua nama host harus diganti dengan alamat IP, seperti www.javafan.net diperlukan untuk mengganti alamat IP yang sesuai.

Prosedur yang berkaitan dengan file operasi Catatan: Jangan keras dikodekan dalam path file program, dan 8, alasan yang sama, tetapi hal ini sangat penting, jadi secara terpisah.Selain itu, platform yang berbeda yang digunakan untuk karakter nama file dan persyaratan nama file panjang maksimum berbeda, waktu untuk menulis program anda untuk menggunakan karakter ASCII kode sebagai nama umum dari file dan tidak dapat menjadi platform nama yang sama sudah ada dalam program ini, jika tidak maka akankonflik.

Jika program anda adalah program GUI yang ditulis dalam penggunaan komponen AWT tidak bisa semena-mena mengatur ukuran dan lokasi komponen harus menggunakan tata letak Jawa manajer (manajer layout) untuk mengatur dan mengelola ukuran dan lokasi komponen visual, atautata letak dapat menyebabkan kebingungan.

Karena sistem operasi yang berbeda, mesin yang berbeda, sistem mendukung warna dan ukuran layar dan resolusi yang berbeda, bagaimana untuk memperoleh atribut?Kelas bisa mendapatkan penggunaan warna java.awt.Systemcolor diperlukan, seperti bingkai jendela inactiveCaption kelas dalam judul acara adalah warna latar belakang, menu warna latar belakang menu.getScreenResolution ini dapat menggunakan java.awt.Toolkit "piksel per inci" sebagai unit resolusi layar tampilan.kelas GetScreenSize bisa mendapatkan ukuran layar (inch), loadSystemColors bisa daftar semua warna sistem.

Beberapa pertimbangan dari referensi, beberapa pengalaman panjang dalam menulis program Java, saya yakin program anda akan membantu merancang