Stream & Exception (materi)
STREAM
Stream adalah sebuah abstraksi yang dapat memberikan atau mendapatkan informasi. Stream dapat dihubungkan dengan peralatan fisik yang terdapat dalam system I/O Java, seperti : keyboard, file, layar consule dan lainnya
Dalam Java, Stream didefinisikan dengan menggunakan empat kelas abstrak, yaitu : InputStream, OutputStream, Reader, dan Writer.
Tipe Stream
Terdapat dua tipe Stream yang dapat digunakan, yaitu:
1.Stream Byte
Didefinisikan dengan menggunakan dua buah hirarki kelas, yakni InputStream dan OutputStream yang keduanya dideklarasikan sebagai kelas abstrak.
Kelas-kelas stream byte yang terdapat dalam paket java.io:
- BufferedInputStream
- BufferedOutputStream
- DataInputStream
- DataOutputStream
- FileInputStream
- FileOutputStream
- InputStream
- OutputStream
- Dll
2.Stream Karakter
Berbasis pada dua buah kelas abstrak, yaitu Reader dan Writer.
Kelas-kelas stream karakter yang terdapat dalam paket java.io:
- BufferedReader
- BufferedWriter
- FileReader
- FileWriter
- InputStreamReader
- OutputStreamReader
- Dll
3.Stream yang Telah Terdefinisi
Semua program Java secara otomatis akan mengimpor paket java.lang. Paket ini mendefinisikan kelas System yang mendefinisikan variabel stream : in, out, dan err.
System.out mengacu pada Stream output standart, System.in mengacu pada Stream input standart, dan System.err mengacu pada stream error standart;
A.Melakukan Inputan
Di sini, kita menggunakan konstruktor dari BufferedRedader sebagai berikut:
BufferedReader(Reader inputReader)
Konstruktor ini akan dihubungkan dengan InputStreamReader yang dapat mengkonversi Byte ke Karakter, dengan menggunakan System.in. Untuk dapat menggunakan System.in maka menggunakan konnstruktor
InputStreamReader(InputStream inputStream)
inputStream dapat diisi dengan System.in. Dengan demikian untuk membuat objek BufferedReader yang terhubung dengan keyboard, kita perlu menggunakan kode berikut:
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader( isr );
1.Membaca Input Data Karakter
Untuk menginput karakter, gunakan method read(). Dengan pendeklarasian int read() throws IOException
2.Membaca Input Data String
Untuk menginput string, gunakan method readLine(). Dengan pendeklarasian String read() throws IOException
3.Membaca Input Data Numerik
Untuk menginput Numerik, gunakan input terhadap data String, kemudian dikonversi ke bilangan bulat menggunakan method parseInt() pada kelas Integer. Parameter yang dilewatkan dalam method tersebut harus bertipe String.
EXCEPTION
Adalah istilah yang diberikan oleh Java kepada kesalahan yang terjadi di dalam program, yang terjadi pada saat run-time. Beberapa kemungkinan error yang bias terjadi adalah:
1.Pemasukkan data karakter ketika meminta masukan berupa data bilangan
2.Terjadi pembagian dengan nol
3.Path atau lokasi file yang diberikan tidak sesuai.
4.Operasi untuk mengakses variabel array pada nomor indeks di luar batas
Terkait dengan persoalan manajemen exception, Java menyediakan metode untuk mengelola exception. Menangkap exception, dimaksud agar alur program dapat dikendalikan meskipun telah terjadi error
Blok try-catch digunakan untuk menangkap exception. Strukturnya:
Try
{
…instruksi yang dikerjakan secara normal…
}
Catch (Exception ex)
{
…instruksi yang dikerjakan jika terjadi error…
}
Untuk listing programnya silahkan dicek di sini