Rabu, 01 Desember 2010

BAB 5 Aplikasi Berbasis Teks




5.1  Tujuan
Pembahasan  kali  ini  akan  menitikberatkan  pada  bahasan  penggunaan  argument
command-line. Selebihnya, Anda akan mempelajari mengenai penggunaan streams
untuk mendapatkan nilai input dari user pada saat runtime, sekaligus dalam proses
manipulasi file.
Pada akhir pembahasan, diharapkan pembaca dapat :
1.  Mendapatkan input dari command-line
2.  Mengetahui cara untuk memanipulasi properties dari sistem
3.  Membaca standart input
4.  Membaca dan menulis file


5.2  Argument Command-Line dan System Properties
Seperti yang  telah Anda  ketahui pada pembahasan sebelumnya,  JAVA mengijinkan
user  untuk  memasukkan  data  dari  command-line.  Sebagai  contoh,  untuk
meneruskan argument 1 dan 2 kepada program Java bernama Calculate, anda dapat
menuliskan baris berikut pada command prompt
java Calculate 1 2
Pada contoh berikut  ini, data 1 disimpan pada variabel args[0], begitu pula dengandata  2  yang  disimpan  pada  args[1].  Sehingga,  tujuan  dari  deklarasi  String  args[]
sebagai sebuah parameter pada method utama menjadi jelas.
Selain melewatkan argument menuju method utama, Anda juga dapat memanipulasi
system properties dari command-line.

System  properties hampir menyamai  environment  variables, namun  tidak memiliki
ketergantungan pada  spesifikasi platform yang digunakan. Sebuah property  secara
sederhana berupa pemetaan antara property name dan value yang dimilikinya. Hal
ini ditunjukkan pada Java dalam class Properties. Class System menyediakan sebuah
method untuk menentukan system properties yang digunakan, method getProperties
yang menghasilkan  sebuah  object  Properties.  Class  yang  sama  juga menyediakan
method getProperty yang memiliki dua buah bentuk.
public static String getProperty(String key) 
Bentuk  ini menghasilkan  nilai  String  dari  System  Properties  yang  ditunjukkan  oleh
key yang ditentukan. Jika hasil menunjukkan nilai null, berarti tidak terdapat property
dengan key yang ditentukan.
public static String getProperty(String key, String def) 
Bentuk  ini  juga menghasilkan  nilai  String  dari  System  Properties  sesuai  key  yang
ditentukan.  Akan  menghasilkan  nilai  def,  sebuah  nilai  default,  jika  tidak  terdapat
property dengan key yang sesuai.

Tabel 1.1: getProperty() method dari class System
Kita  tidak  dapat  cukup  berhenti  pada  detail  dari  system  properties,  namun
dilanjutkan  dengan  memanipulasi  system  properties  yang  digunakan.  Jika  Anda
tertarik mempelajari lebih lanjut  tentang system properties, Anda dapat menelusuri
dokumentasi API yang disediakan.
Anda  dapat  menggunakan  argument  opsional  –D  pada  perintah  Java  dalam
command-line untuk menambahkan property baru.
java -D<name>=value
Sebagai contoh, untuk mengatur system property dengan nama user.home bernilai
phillipines, gunakan perintah berikut :
java -Duser.home=philippines
Untuk  menampilkan  daftar  system  properties  yang  tersedia  pada  sistem  Anda, gunakan method getProperties seperti yang ditunjukkan sebagai berikut :
System.getProperties().list(System.out);