network programming 04- exception dan stream
TRANSCRIPT
Ridwan MontezariRidwan [email protected]
E ti d StException dan Stream
E tiException
ExceptionException adalah suatu kondisi abnormal yang terjadipada saat pengeksekusian suatu perintah
fTerdapat 5 keyword : try, catch, finally, throw dan throws
Penggunaan Exception
try‐catchDi dalam blok try merupakan kode program yang ingindieksekusi.
Catch menentukan exception yang ingin ditangkap danuntuk mendefinisikan kode program yang akan dijalankanbila terjadi exception tersebutbila terjadi exception tersebut.
Jika tidak terjadi kesalahan maka blok catch akandiabaikan.
Contoh try‐catch
try‐catch‐finallyBlok finally mengandung kode penanganan setelahpenggunaan try dan catch.
Blok kode ini selalu tereksekusi walaupun sebuahexception terjadi atau tidak pada blok try.
try‐catch‐finally
throwDigunakan untuk melemparkan suatu Exception
throwsDipakai untuk menyatakan sebuah method yang mungkin melemparkanexception yang tidak ditanganinya sendiri.
StStream
Java I/O (Input/Output)Dalam pemrograman jaringan, Java IO dibutuhkan ketikakita hendak mengirimkan byte data maupun membacadata dari serverdata dari server.
Input/Output dalam Java dipaketkan dalam java.io.
Selain kelas kelas paket ini juga mengandung interfaceSelain kelas‐kelas, paket ini juga mengandung interface yang menangani stream data output dan input.
StreamStream adalah abstraksi dari aliran data yang dapatdigunakan sebagai input atau output dari suatu informasitertentutertentu.
Stream dapat dihubungkan dengan peralatan fisik yang terdapat dalam system I/O Java seperti : keyboard fileterdapat dalam system I/O Java, seperti : keyboard, file, layar dan lain‐lain
Input/Output dalam Java dipaketkan dalam java.io.
Stream mempunyai dua tipe :Byte Stream
Character Stream
Tipe StreamByte Stream
Digunakan untuk operasi I/O yang mengunakan data biner(b t )(byte).
Didefinisikan dengan menggunakan dua buah hirarki kelas, yakni InputStream dan OutputStream yang keduanyay p p y g ydideklarasikan sebagai kelas abstrak.
Tipe StreamTipe Stream
Byte Stream
Class DeskripsiBufferedInputStream Byte Input Stream yang menggunakan buffer
Kelas‐kelas yang terdapat dalam paket java.io :
BufferedOutputStream Byte Output Stream yang menggunakan buffer
DataInputStream Byte Input Stream yang memiliki method untuk membaca input yang bertipe data standar java
DataOutputStream Byte Output Stream yang memiliki method untuk menuliskan output yang bertipe data standar java
FileInputStream Byte Input Stream yang membaca dari file
FileOutputStream Byte Output Stream yang menulis ke file.
ByteArrayInputStream Byte Input Stream yang membaca array bertipe byte
ByteArrayOutputStream Byte Output Stream yang menulis array bertipe byte
PrintStream Byte Ouput Stream yang menambahkan method untuk menulis ke sesuatuoutput. Method yang ditambahkan yaitu print() dan println().
Tipe StreamCharacter Stream
kelompok kelas ini digunakan untuk menangani proses bacat li k kttulis karakter.
Berbasis pada dua buah kelas abstrak, yaitu Reader danWriter.
Kelas ini merupakan pengembangan dari kelas Byte Stream sehingga lebih efisien.
Tipe StreamTipe Stream
Character StreamKelas‐kelas yang terdapat dalam paket java.io :
Class Deskripsi
BufferedReader Input Character Stream yg menggunakan Buffer
BufferedWriter Output Character Stream yg menggunakan Buffer
FileReader Input Character Stream yang membaca dari file
FileWriter Output Character Stream yang menulis ke file
InputStreamReader Input Stream yang menkonversi dari byte ke char
OutputStreamReader Output Stream yang mengkonversi dari char ke byte
CharArrayReader Input Character Stream yang membaca dari array bertipe char
CharArrayWriter Output Character Stream yang menulis dari array bertipe char
PrintWriter Output Character Stream yang menambahkan method untuk memudahkanproses menulis ke suatu output. Method yang ditambahkan adalah print() danprintln().p ()
StringReader Input Character Stream yang membaca dari string
StringWriter Output Character Stream yang menulis ke string
Variabel Stream StandarJava menyediakan 3 buah variabel stream yang dapatdigunakan.Kelas java.lang.System berkaitan standar input, output danerror. Variabel ini merupakan member dari public static dariclass System yaitu : in, out, dan errSystem.in merupakan objek dari InputStreamSystem.out dan System.err merupakan objek dari PrintStreamSystem.out merupakan output stream standar dimana secaradefault outputnya adalah consoleSystem.in merupakan input stream standar dimana secaradefault inputannya adalah keyboardSystem.err merupakan output stream untuk mencetak pesany p p pkesalahan dimana secara default outputnya adalah console.
Byte Stream ‐ InputStreamMethod‐methodnya adalah :
public abstract int read( )Membaca byte berikutnya dari input stream dan mengembalikany y p gnilainya sebagai integer (int).
public int read(byte[] x)Membaca sejumlah byte dari input stream, meletakannya kedalamj y p ybuffer array x dan mengembalikan jumlah byte yg berhasil dibaca
public int read(byte[] x, int offset, int length)Membaca sejumlah byte dari input stream sebanyak length meletakannya kedalam buffer array x mulai dari posisi offset (x[offset]) dan mengembalikan jumlah byte yg dibaca.
public long skip(long n)l l h dMelompati sejumlah n dari input stream
Byte Stream ‐ InputStreamMethod‐methodnya adalah :
public int available( )Mengembalikan jumlah byte yang dapat dibaca/dikembalikan oleh input steamsteam
public void close( )Menutup input stream dan membebaskan semua resource yang berhubungan dengan stream.
( )public void mark(int readLimit)Menandai posisi pada saat ini dalam input stream yang akan tetap valid hingga sejumlah readLimit dibaca.
public void markSupported()p pp ()Mengembalikan nilai true jika stream ini mendukung method mark() danreset().
public void reset()Mengembalikan posisi pembacaan stream ke posisi dimana terakhir kaliMengembalikan posisi pembacaan stream ke posisi dimana terakhir kali method mark() dipanggil
Byte Stream ‐ OutputStreamMethod‐methodnya adalah :
public void close()Menutup output stream dan membebaskan semua resource yang p p y gberhubungan dengan stream ini.
public void flush()Mengosongkan buffer dan menuliskan semua output ke tujuannya.g g p j y
public void write(byte[] x)Menuliskan isi array x ke output stream.
public void write(byte[] x int offset int length)public void write(byte[] x, int offset, int length)Menuliskan isi array x ke output stream mulai dari posisi offset (out[offset]) sebanyak length.
public abstract void write(int x)public abstract void write(int x)Menuliskan sebuah byte data ke output stream.
Contoh PemakaianContoh Pemakaian
Byte Stream
Contoh PemakaianContoh Pemakaian
Byte Stream
Contoh PemakaianContoh Pemakaian
Byte Stream
Contoh PemakaianContoh Pemakaian
Byte Stream
Character Stream ‐ ReaderMethod‐methodnya adalah :
public abstract int read( )Membaca karakter berikutnya dari input stream dan mengembalikan ‐1 jik t l h i khi d i tjika telah mencapai akhir dari stream.
public int read(char[] x)Membaca karakter dari input stream sebanyak x.length danmengembalikan jumlah karakter yang berhasil dibaca atau ‐1 jika telahmengembalikan jumlah karakter yang berhasil dibaca atau 1 jika telahmencapai akhir stream.
public int read(char[] x, int offset, int length)Membaca dari input stream sebanyak length karakter dan meletakannyak b ff l i d i i d ff t ( [ ff t]) d b likke buffer array x mulai dari index offset (x[offset]) dan mengembalikanjumlah karakter yang berhasil dibaca atau ‐1 jika telah mencapai akhirstream
public long skip(long n)Melompati sejumlah n dari input stream
Character Stream ‐ ReaderMethod‐methodnya adalah :
public void close( )Menutup input stream dan membebaskan semua resource yang p p y gberhubungan dengan stream.
public void mark(int readLimit)Menandai posisi pada saat ini dalam input stream yang akan tetap valid p p p y g phingga sejumlah readLimit dibaca.
public void markSupported()Mengembalikan nilai true jika stream ini mendukung method mark() danreset().
public void reset()Mengembalikan posisi pembacaan stream ke posisi dimana terakhir kali
h d k() d lmethod mark() dipanggil
Character Stream ‐ WriterMethod‐methodnya adalah :
public void close()Menutup output stream dan membebaskan semua resource yang berhubungan dengan stream iniberhubungan dengan stream ini.
public void flush()Mengosongkan buffer dan menuliskan semua output ke tujuannya.
public void write(char x)Menuliskan sebuah karakter data ke output stream.
public void write(char[] x, int offset, int length)Menuliskan isi array x ke output stream mulai dari posisi offset (out[offset]) sebanyak lengthsebanyak length.
public void write(String str)Menuliskan sebuah string ke output stream
public void write(String str, int offset, int len)Menuliskan substring dari sebuah string mulai dari posisi offset sebanyak len
Character StreamCharacter StreamMembaca Input dari Console
Character StreamCharacter StreamMembaca Input String dari Console
Character StreamCharacter StreamMenulis Output Ke Console
Character StreamCharacter StreamMembaca Input Dari File
Character StreamCharacter StreamMenulis OutputKe FileKe File
Rename File
Membuat Directory
Directory Listing