Java Package • Pengorganisasian Class dalam Java sesuai dengan nama dan penggunaannya. • Pemrogram dapat menggunakan sesuai dengan kebutuhan. • Contoh: Bahasa Pemrograman – javax.swing.JOptionPane j i JO ti P 11 Februari 2010 Kuliah 10 :: Java Package and Class Julio Adisantoso Slide 1 Contoh (dialog box) Input dari Keyboard • Menggunakan BufferedReader import javax.swing.JOptionPane; – Tambahkan : import java.io.*; – Tambahkan statement: public class welcome { BufferedReader dataIn = new BufferedReader(new InputStreamReader( System.in) ); public static void main(String args[]) { JOptionPane.showMessageDialog( – Deklarasikan variabel String temporer untuk mendapatkan input, input dan gunakan fungsi readLine() untuk mendapatkan input dari keyboard. Tuliskan di dalam blok try-catch: null, "Welcome\nto\nJava Programming!”); System.exit(0); try{ String temp = dataIn.readLine(); } catch( IOException e ){ System.out.println(“Error in getting input”); } } } Slide 2 Contoh Slide 3 Input dari Keyboard • Menggunakan JOptionPane import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.IOException; public class input { public static void main( String[] args ){ BufferedReader dataIn = new BufferedReader(new InputStreamReader( System.in) ); • Contoh: import javax.swing.JOptionPane; public class inputbox { public static void main( String[] args ){ String name = ""; name= JOptionPane.showInputDialog("Ketik i h i l (" ik nama Anda"); d ") String msg = "Hello " + name + "!"; JOptionPane.showMessageDialog(null, msg); } } String name = ""; System.out.print("Ketik nama Anda : "); try{ name = dataIn.readLine(); } catch(IOException e){ System.out.println("Error!"); } System.out.println("Hello " + name +" !"); } } Slide 4 Julio Adisantoso, ILKOM IPB Slide 5 1 Contoh Kasus :: Time UML Presentation -- Time • Unified Modeling Language • Menyajikan class diagram • Time memiliki data berupa nilai jam (hour), menit (minute) , dan detik (second) yang masing-masing memiliki nilai default adalah 0. • Obyek Time memiliki karakteristik sbb: Time – Dapat ditentukan nilainya dengan fungsi setTime(h, m, s) p ditambah nilai detiknya y dengan g sebuah bilangan g bulat – Dapat menggunakan fungsi addSecond(n) – Dapat dicetak dengan bentuk hh:mm:ss menggunakan fungsi print() – Dapat memperoleh nilai jam dengan fungsi getHour(), nilai menit dengan fungsi getMinute(), da nilai detik dengan fungsi getSecond() -hour : int -minute minute : int -second : int +<<constructor>>Time() +setTime(in h, m, s: int) +getHour() +getMinute() +getSecond() +addSecond(in n: int) +print() Slide 6 Object dan Class Slide 7 Instansiasi Class • Komponen dalam software yang memiliki struktur yang • Untuk membuat sebuah object atau sebuah instance • Terdiri dari: • Contoh: mirip dengan object pada dunia nyata. pada sebuah class, digunakan operator new – Sekumpulan data yang menunjukkan atribut dari suatu object. Berupa beberapa variabel. – Beberapa method (behaviour) yang menunjukkan bagaimana perilaku atau operasi p p dari suatu object. j String st = new String("Hello world!"); Time t1 = new Time(); • Class adalah struktur dasar dari OOP yang terdiri dari atribut dan method. Keduanya disebut instance. Java Class Library • Contoh: Time t1 = new Time(); Time t2 = new Time(); User-define Java Class Î t1 dan t2 adalah dua object dari class Time. Slide 8 Mendefinisikan Class Slide 9 Attribute declaration • Format: • Format: <modifier> <type> <name> [= <DefaultValue>]; <AccessModifier> class <ClassName> { <attributeDeclaration>* <constructorDeclaration>* <methodDeclaration>* } • Modifier: – private - variabel tersebut hanya dapat diakses oleh class itu sendiri. Object lain tidak dapat menggunakan variabel tersebut secara langsung. – protected - variabel tersebut dapat diakses oleh class itu sendiri dan turunannya. – public – variabel dapat diakses oleh class lain dalam package yang sama. • Access modifier: – public - class ini dapat diakses dari luar package – package – class ini hanya dapat diakses oleh instance sebuah class yang berada pada package yang sama. • Ketika object dibuat dengan class yang sama, maka tiap instance memiliki copy dari variable class. Hal ini tidak berlaku jika suatu instance dibuat sebagai static. Slide 10 Julio Adisantoso, ILKOM IPB Slide 11 2 Methods Methods • Format: • Accessor Methods – Digunakan untuk membaca nilai variabel atau nilai hasil pengolahan pada class. – Umumnya dimulai dengan penulisan get….. – Method ini juga mempunyai sebuah return value. – Contoh: public double getPanjang() { … } public double getLuas() { … } <modifier> <returnType> <name>(<parameter>*) { <statement>* } • Atribut dan Class dapat berupa: – Instance : default – Static • Kita harus menggunakan static method untuk mengakses • Mutator Methods static variable. – Method yang dapat memberi atau mengubah nilai variable dalam class. – Umumnya dimulai dengan penulisan set…… – Contoh: public void setPanjang(double p) { … } • Simbol modifier dalam UML : – Public : + – Private : – Protected : # – Package : ~ Slide 12 Julio Adisantoso, ILKOM IPB Slide 13 3