KELAS INNER, KELAS ABSTRAK, DAN INTERFACE. 14 th week Estu Sinduningrum ST,MT

Ukuran: px
Mulai penontonan dengan halaman:

Download "KELAS INNER, KELAS ABSTRAK, DAN INTERFACE. 14 th week Estu Sinduningrum ST,MT"

Transkripsi

1 KELAS INNER, KELAS ABSTRAK, DAN INTERFACE 14 th week Estu Sinduningrum ST,MT

2 KELAS INNER (INNER CLASS) Kerangka umum program yang berorientasi objek. Sejauh ini Anda mengetahui bahwa dalam satu file *java terdapat satu atau lebih kelas dan nusing-masing kelas mengandung data dan method. Selain bentuk kerangka umum tersebut, java mcmperbolehkan Anda menyisipkan suatu kelas ke dalam kelas lainnya. Kelas sisipan ini disebut Inner class. Kelas Inner ini bersifat tersarang terhadap kelas utamanya, seperti halnya blok penyeleksian (if, for ) yang tersarang pada blok penyeleksian lainnya atau method yang tersarang pada method lainnya.

3 KELAS INNER (INNER CLASS) Inner Class adalah Kelas yang disisipkan di dalam keras yang lain. Fungsi kelas sisipan ini adalah mendukung suatu proses yang akan dijalankan oleh kelas utamanya.

4 KETENTUAN INNER CLASS Beberapa Ketentuan Inner Class adalah sebagai berikut: 1. Bila sebuah kelas mengandung suatu inner kelas, maka pada saat kompilasi akan dihasilkan file *.class untuk keduanya (kelas utama dan kelas inner nya). File *.class akan memiliki nama NamaKelasTerluar$NamaKelasInner.class untuk kelas inner. Bila kelas inner tersebut tidak diberi nama, maka format filenya menjadi: NamaKelasTerluar $#.class. Simbol # menyatakan nomor urutan kelas inner. 2. Inner Class yang dideklarasikan dengan nama dapat dibubuhi modifier public, private, dan protected. 3. Gunakan bentuk NamaKelasTerluar.this untuk mengakses referensi this dari kelas terluar.

5 KERANGKA KELAS YANG MENGGANDUNG INNER CLASS

6 KETENTUAN INNER CLASS 4. Dalam proses pembentukan objek, Kelas Terluar bertanggung jawab untuk menciptakan objek dari Kelas Innemy'a. Prosesnya adalah sebagai berikut: Buat objek dari Kelas Terluar (misal objek tersebut a); Menugaskan objek tersebut kepada sutu objek referensi dari hasil instansiasi. Kelas Inner (misal objek referensi Kelas Inner b.). KelasTerluar a = new KelasTerluar0; KelasTerluar. Kelaslnner b = a. new Kelaslnner();

7 KETENTUAN INNER CLASS Inner Class dapat dibubuhi modifier static. Dengan modifier static, maka Anda dapat membuat objek dari kclas Inner tersebut tanpa harus melalui Kelas Terluarnya. Sebagai konsekuensinnya, maka Kelas Inner tersebut tidak dapat mengakses variabel maupun method nonstatic dari Kelas Terluarnya.

8 LATIHAN 74

9 /** *Title : Kelas Inner *Deskripsi : Mendemonstrasikan Kelas Inner sebagai * suatu kelas yang tersarang terhadap * kelas lainnya. */ // Kelas Terluar class KelasTerluarA{ private String pesan = "Objek dari KelasTerluarA"; // Method konstruktor untuk kelas KelasTerluarA KelasTerluarA (String noobjek){ pesan = pesan + noobjek; } // Method cetak pesan yang dimiliki oleh kelas KelasTerluarA public cetakpesan() { System.out.println(pesan); } // Kelas Inner tingkat pertama class KelasInnerB { private String pesan = "Objek dari KelasInnerB"; // Method konstruktor untuk kelas KelasInnerB KelasInnerB (String noobjek){ pesan = pesan + noobjek; } // Method cetak pesan yang dimiliki oleh kelas KelasInnerB public cetakpesan() { System.out.println(pesan); } // Kelas Inner tingkat kedua class KelasInnerC { private String pesan = "Objek dari KelasInnerC"; KelasInnerC(String noobjek){ pesan = pesan + noobjek; } // Method cetak pesan yang dimiliki oleh kelas KelasInnerC public cetakpesan() {

10 /** Mencetak pesan dari variabel yang dimiliki *oleh objek dari KelasInnerA */ System.out.println(KelasTerluarA.this.pesan); KelasTerluarA.this.cetakPesan(); System.out.println("\n"); } } } } public class DemoKelasInner{ /** Main Method */ public static main (String args[]) { /** *Mengakses method cetakpesan yang dimiliki oleh *KelasInnerC yang tersarang pada KelasTerluarA dan *Kelas InnerB --> A(B(C)) dengan membuat *objekkelasa --> *objekkelasb --> ObjekKelasC.namaMethod */ KelasTerluarA a = new KelasTerluarA("Cara 1"); KelasTerluarA.KelasInnerB b = a.new KelasInnerB("Cara 1"); KelasTerluarA.KelasInnerB.KelasInnerC c = b.new KelasInnerC("Cara 1"); c.cetakpesan(); /** *Mengakses method cetakpesan yang dimiliki oleh *KelasInnerC yang tersarang pada KelasTerluarA dan *Kelas InnerB --> A(B(C)) dengan membuat *objekkelasb --> *ojekkelasc.namamethod */ KelasTerluarA.KelasInnerB bb = new KelasTerluarA("Cara2").new KelasInnerB("Cara2"); KelasTerluarA.KelasInnerB.KelasInnerC cc = bb.new KelasInnerC("Cara 2"); cc.cetakpesan(); /** *Mengakses method cetakpesan yang dimiliki oleh *KelasInnerC yang tersarang pada KelasTerluarA dan *Kelas InnerB --> A(B(C)) dengan membuat *ojekkelasc.namamethod */ KelasTerluarA.KelasInnerB.KelasInnerC ccc = new KelasTerluarA("Cara3").new KelasInnerB("Cara3").new KelasInnerC("Cara3"); ccc.cetakpesan(); } }

11 MENGGUNAKAN INNER CLASS Konsep Inner class sering digunakan untuk menambahkan blok handler pada main method suatu aplikasi berbasis GUI. Blok Handler merupakan bagian program yang akan memproses event-event yang dipicu ketika user berinteraksi dengan komponen-komponen GUI

12 LATIHAN 75

13 /** *Title : Demo JButton Inner Class *Deskripsi : Membuat aplikasi Button sederhana * dengan handlernya menggunakan *prinsip Inner Class */ import java.awt.*; import java.awt.event.*; import javax.swing.*; public class DemoJButtonInner extends JFrame { // Mendeklarasikan button private JButton btn; // Konstruktor Default public DemoJButtonInner() { super("demo Jbutton Inner Class"); Container c = getcontentpane(); c.setlayout( new FlowLayout()); // Menugaskan objek-objek Jbutton btn = new JButton("Button"); c.add(btn); // Membuat objek (instans) dari inner class ButtonHandler // yang digunakan untuk button event handling ButtonHandler handler = new ButtonHandler(); btn.addactionlistener(handler); setsize(275,100); show(); } /** Main Method */ public static main (String args[]) { DemoJButtonInner app = new DemoJButtonInner(); app.addwindowlistener ( new WindowAdapter(){ public windowclosing(windowevent e) { System.exit(0); } } ); } // Inner Class untuk "Event handling" pada button private class ButtonHandler implements ActionListener { public actionperformed (ActionEvent e) { JOptionPane.showMessageDialog (null, "Anda telah menekan :" + e.getactioncommand() + "\n" + "Handler Button ini menggunakan prinsip Inner Class"); } } }

14 KELAS ABSTRAK (ABSTRACT CLASS) Kelas Abstrak (Abstract class) adalah kelas yang terletak pada posisi tertinggi dari hierarki kelas. Kelas ini digunakan sebagai basis bagi penurunan kelaskelas lainnya, sehingga tidak dapat diinstansiasi secara langsung menjadi objek. Sebagai kelas basis, kelas ini hanya berisi variabel umum dan deskripsi method tanpa detail implementasi. Selanjutnya, kelas-kelas yang diturunkan dari kelas abstraklah yang harus mendefinisikan secara detail method tersebut.

15 KELAS ABSTRAK (ABSTRACT CLASS) Kelas Abstrak Adalah kelas yang terletak pada posisi tertinggi dari hierarki kelas dari menjadi basis untuk mcnurunkan kelas-kelas lainnya. Bentuk Umum : (Modifier tambahan) abstract class NamaKelasAbstract{ Variabel umum dan Deskripsi method tanpa Implentasi; }

16 ILUSTRASI Asumsikan rerdapat suatu kelas MakhlukHidup yang merupakan kelas abstract semua makhluk yang hidup di bumi ini (manusia, hewan tumbuhan). Anda ingin memiliki kelas yang dapat menginstans objek yang bernama Amir, Tati, Santi, dan John. Tentu tidaklah mungkin untuk menginstans kelas MakhlukHidup langsung menjadi objek-objek tersebut karena kelas tersebut hanya mendefinisikan data dan method umum yang berlaku untuk seluruh makhluk hidup (manusia, hewan, tumbuhan).

17 ILUSTRASI Karena kelas MakhlukHidup terletak pada hirarki teratas, maka Anda harus membentuk subkelas-subkelas untuk dapat menginstans objek Amir, Tati, dan seterusnya. Subkelas ini bisa berupa MahlukHidup - Manusia atau bisa juga MakhlukHidup - Manusia - RasAsia - Indonesia - pekerja, dan sebagainya. Selanjutnya, apabila Anda mengacu kepada struktur organisasi perusahaan, maka kelas pekerja ini dapat dipandang sebagai suatu kelas abstrak bagi kelas-kelas yang diturunkan darinya, seperti Kelas Direktur, Kelas Manajer, Kelas Staff, Kelas Buruh, dan seterusnya

18 INTERFACE Adalah kumpulan method yang hanya memuat deklarasi dan struktur method, tanpa detail implementasinya. Interface digunakan bila Anda ingin mengaplikasikan suatu method yang spesifik, yaitu tidak diperoleh dari proses pewarisan kelas, interlace bersifat disisipkan (embeded) pada program, dan programmer diberi keleluasaan untuk merancang dan mendefinisikan sendiri detail prosesnya. Dalam istilah pemrograman, Kelas dan Interfacc fundamental yang dijadikan Library relerensi dikenal dengan istilah API (Application Programming Interface).

19 DEKLARASI INTERFACE Interface adalah kumpulan struktur method, tanpa detail method yang hanya memuat deklarasi dan implementasinya Interface dideklarasi kan sebagai berikut: Modifier interface namainterface { /* *Deklarasi konstanta*/ /**Signature method*/ }

20 LATIHAN 76

21 /** *Title : Demo Interface *Deskripsi : Menerapkan konsep interface */ /** Deklarasi Interface */ interface Konstanta { double KONST_PI = 3.14; String KONST_SATUAN_LUAS = "cm. persegi"; String KONST_SATUAN_PANJANG = "cm."; } public class DemoInterface implements Konstanta { /** Main Method */ public static main (String args[]){ System.out.println("\nPROGRAM DEMO INTERFACE"); System.out.println(" \n"); double radius = 10; System.out.println("Radius Lingkaran :"+ radius); System.out.println("Luas Lingkaran :"+(KONST_PI*radius*radius)+KONST_SATUAN_LUAS); System.out.println("Keliling Lingkaran"+(2*KONST_PI*radius)+ Konstanta.KONST_SATUAN_PANJANG); } } Estu Sinduningrum, ST, MT

22 MENGAPA BUTUH INTERFACE? Ada dua pertanyaan yang mungkin timbul saat ini. Pertama, bila Anda bisa mendefinisikan suatu kelas sedemikian rapi dan lengkap, mengapa masih dibutuhkan interface? Pertanyaan kedua, apakah konsep pewarisan data dan method (inheritance) masih belum cukup untuk memecahkan masalah?

23 MEMECAHKAN BAGIAN YANG RUMIT DAN SPESIFIK Marilah kita tinjau prinsip perancangan program untuk menjawab pertanyaan pertama. Dalam merancang suatu program. Langkah-langkah yang sering dilakukan adalah mengidentifikasi dan menganalisa masalah, kemudian melakukan abstraksi dan konseptualisasi solusi, dan selanjutnya merancang resources dan komponen yang dibutuhkan. Resource dan komponen dalam OOP dikenal sebagai kelas, data, method, interface, dan sebagainya. Pada saat mcrancang resource dan komponen, terkadang ada bagian yang cukup rumit dan spesifik yang tidak belum disediakan oleh J2SDK.

24 MEMECAHKAN BAGIAN YANG RUMIT DAN SPESIFIK Berikut ini dua pilihan untuk memecahkan masalah. 1. Membuatnya dari awal, mulai dari deklarasi kelas, menentukan data, dan method serta detail implementasi dari method tersebut. Prinsip ini sering disebut sebagai Pemrograman dari Corat-Coret (Programming from the Scratch). 2. Memanfaatkan solusi yang sudah dibuat rian didefnisikan oleh suatu vendor dan menggunakannya dalam program.

25 MEMECAHKAN BAGIAN YANG RUMIT DAN SPESIFIK Prinsip pertama berarti Anda berusaha untuk menciptakan sendiri bagian yang spesifik dan rumit tersebut. Ditinjau dari segi biaya, prinsip ini paling murah (low cost) karena Anda tidak perlu membeli resource dan omponen dari vendor lain. Kelemahannya adalah waktu perancangan lebih lama dan terkadang tidak sesuai untuk aplikasi yang membutuhkan kehandalan dan performansi yang tinggi, seperti pada aplikasi telekomunikasi dan keamanan transaksi bank (membutuhkan cryptography)

26 MEMECAHKAN BAGIAN YANG RUMIT DAN SPESIFIK Prinsip kedua memang lebih mudah dan relatif lebih cepat karena tinggal menggunakan kelas atau interface solusi yang telah dibuat oleh suatu vendor. Selain itu, keandalan dan performansinya juga dijamin oleh vendor sehingga dapat diterapkan untuk aplikasi yang sangat kritis. Bila resource ini bersifat gratis seperti J2SDK dari Sun, maka biaya bisa ditekan. Namun bila harus membeli, biasanya harganya sangat mahal.

27 KETERBATASAN INHERITANCE Sebelum menjawab pertanyaan kedua, marilah Anda tinjau lagi sifat dan keterbatasan pewarisan (inheritance). Inheritance adalah proses pewarisan data dan method dari suatu kelas induk (kelas super) kepada kelas anaknva (subkelas). Sebuah subkelas atau kelas turunan hanya boleh diturunkan dari satu kelas induk. tidak boleh lebih.

28 KETERBATASAN INHERITANCE Dalam prinsip pewarisan (inheritance), kelas turunan (subclass) hanya boleh diturunkan dari satu kelas induk (kelas super). Prinsip inheritance ini dapat dianalogikan sebagai proscs pewarisan genetika dan hubungan darah, dari ayah dan ibu kenada anak-anaknya. Sepasang suami istri dapat mcrniliki lebih dari satu anak, namun anak tidak mungkin berasal dari lebih dari satu pasangan suami istri.

29 KETERBATASAN INHERITANCE Kembali ke persoalan semula, bagaimana bila Anda ingin memiliki kelas yang di dalamnya terdapat methodmethod yang bcrasal dari beberapa library referensi (kelas) yang berbeda? Dalam hal inilah interface berperan karena dengan Interface Anda bisa memasukkan method-method dari beberapa Libarary referensi tanpa harus menurunkannya dari suatu kelas Interface merupakan solusi atas prinsip pewarisan lebih dari satu (multiple inheritance). Dengan interface, suatu objek dapat memiliki behavior yang berasal dari beberapa referensi.

30 KETERBATASAN INHERITANCE Interface dapat diilustrasikan sebagai berikut. Seorang artis ingin memiliki banyak keahlian dalam bidang seni, seperti menyanyi, main film laga, dan melawak. Dia ingin bergaya seperti seorang Ricky Martin, berkungfu seperti Jacky Chan, dan membuat penonton terpingkalpingkal bak Mr. Bean. Apa yang harus dilakukannya? Tentu ia harus mempelajari bagaimana aktor-aktor tersebut melakukannya, dan kemudian menambahkan pengetahuan tersebut sebagai keahlian baru baginya. Ia tidak perlu menjadi anak dari mereka untuk dapat meniru tingkah laku ketiga artis tersebut.

31 APAKAH INTERFACE = KELAS ABSTRAK? Pertanyaan selanjutnya adalah: apakah interface sama dengan kelas abstrak? Ditinjau dari bagaimana kelas abstrak dan interfacc terdeklarasi, memang ada kemiripan di antara keduanya. Kelas abstrak adalah kelas yang terletak pada hierarki teratas dari bagan kelas sehingga tidak mungkin langsung diinstansiasi menjadi objek. Demikian juga dengan interface, ia tidak dapat diinstansiasi menjadi objek.

32 APAKAH INTERFACE = KELAS ABSTRAK? Meskipun ada kemiripan, namun Anda tidak bisa mengatakan bahwa interface sama dengan kelas abstrak. Berikut ini data perbedaan di antara kelas abstrak, kelas secara umum, serta interface.

33 Perbedaan Komponen penyusun Kelas Abstrak dan Interface adalah: 1 Tipe data/ Variabel Kelas Abstrak : Interface : 2 Method Kelas Abstrak : semua tipe data. hanya boleh berupa konstanta. bisa berupa signature-nya saja atau berupa detail implementasi method. Interface : 3 Sintaks Method Kelas Abstrak: Interface : hanya berupa signature, programmer harus mendefinisikan dan membuat detail implementasi dari method. Jadi. method yang terdapat di dalam interfae adalah method abstrak. Semua method yang didelarasikan di dalam kelas abstrak harus dibubuhi modifier abstract. Tidak perlu membubuhkan modifier abstract pada semua method di dalam kelas

34 Perbedaan antara (secara umum) dan Interface adalah: 1 Defisi Kelas : Interface : 2 Kandungan informasi Kelas : Interface : 3 Instansiasi Kelas : Interface : Pemodelan dari objek. kumpulan method yang hanya diterapkan pada aplikasi tertentu. Mendefinisikan variabel dan method secara detail dan konkret. hanya mendefinisikan signature dari method, selanjutnya programerlah yang menentukan detail method. Bisa diinstansiasi menjadi objek. Tidak dapat diinstansiasi menjadi objek

35 APAKAH INTERFACE = KELAS ABSTRAK? Bila suatu kelas ingin menggunakan interface, maka pada deklarasi kelas tersebut harus ditambahkan keyword implements dan nama interface-nya. Selanjutnya, method dari interface tersebut harus disisipkan dan didefinisikan secara detail pada kelas

36 MENGAPLIKASIKAN INTERFACE Interface sering digunakan untuk menambahkan event handling pada program. Contoh yang bagus adalah saat Anda merancang aplikasi GUI yang lengkap, mulai dari pemilihan komponen sampai perancangan bagian pemrosesan eventnya.

37 LATIHAN 77

38 /** *Title : Demo JButton Interface *Deskripsi : Membuat aplikasi Jbutton * Sederhana dengan handlernya menggunakan * konsep Inner Class */ import java.awt.*; import java.awt.event.*; import javax.swing.*; public class DemoJButtonInterface extends JFrame implements ActionListener { // Mendeklarasikan button private JButton btn; // Konstruktor Default public DemoJButtonInterface() { super("demo JButton Token.face"); Container c = getcontentpane(); c.setlayout( new FlowLayout()); // menugaskan objek Jbutton btn = new JButton("Button"); c.add(btn); // Meregistrasi listener btn.addactionlistener(this); setsize(275,100); show(); } /** Main Method */ public static main (String args[]) { DemoJButtonInterface app = new DemoJButtonInterface(); app.addwindowlistener ( new WindowAdapter(){ public windowclosing(windowevent e) { System.exit(0); } } ); } // Method actionperformed untuk memproses // event yang dipicu oleh listener public actionperformed (ActionEvent e) { JOptionPane.showMessageDialog (null, "Anda telah menekan :" + e.getactioncommand() + "\n" + "Handler Button ini menggunakan prinsip Interface"); } } Estu Sinduningrum, ST, MT

39 GUI BAGIAN 1: AWT (ABSTRACT WINDOWING TOOLKIT)

40 PEMROGRAMAN GUI Bagi sebagian bcsar pengguna, bekerja dengan I/O yang berbasis text atau console adalah membosankan. Sebagian besar pengguna lebih menyukai aplikasi yang bcrbasis GUI (Graphical User Interface) karena memiliki tampilan yang lebih interaktif. Java menyediakan dua kelas untuk bekerja dengan GUI, yaitu AWT (Abstract Windowing Toolkit) dan Swing.

41 PEMROGRAMAN GUI AWT terdapat dalam package java.awt. Package ini berisi kompnnen-komponen GUI yang bersifat platform oriented atau tergantung pada suatu platform sistem operasi. Swing ada pada package javax.swing dan bersifat lightweight, yaitu dapat diaplikasikan untuk semua platform (multiplatform).

42 PEMROGRAMAN GUI Beberapa fasilitas yang disediakan package java.awt adalah: 1. Pengaturan tata letak (layout management) komponen dalam suatu kontainer. 2. Mendukung event handling, yaitu mekanisme pendeteksian event dan penentuan respons yang akan diberikan ketika pengguna (user) mengakses komponen tersebut. 3. Manipulasi grafis dari komponen, seperti font, warna, icon, dan sebagainya.

43 KOMPONEN Kelas Component merupakan kelas abstrak dari semua komponen yang digunakan untuk merancang GUI. Kelas ini memiliki beberapa subkelas yang merupakan kelas konkrit dari komponen-komponen kontrol GUI, seperti Button, Label, CheckBox, dan sebagainya.

44 KELAS COMPONENT DAN SUBKELASNYA Komponen (Component) Komponen merupakan Kelas Super dari semua komponen kontrol GUI yang bukan merupakan menu. Kelas ini menyediakan basic support untuk event handling, pengubahan ukuran komponen (resizing), pengaturan font dan warna, dan sebagainya.

45 KELAS COMPONENT DAN SUBKELASNYA Komponen Kontrol GUI (Subkelas dari Component) Button Canvas Checkbox adalah tombol dengan label text dan akan mentrigger event ketika user mengklik/menekan tombol tersebut adalah komponen yang digunakan untuk menggambar dan merancang komponen GUl. adalah komponen yang menyediakan suatu set pilihan yang dapat ditoggle on/off. CheckBox dapat dikelompokkan untuk membentuk radio button. Choice Label adalah komponen yang memberikan menu yang dapat muncul secara otomatis (pop-up). adalah komponen yang digunakan untuk menampilkan tulisan/pesan yang hanya dapat dibaca, tidak dapat dimodifikasi.

46 KELAS COMPONENT DAN SUBKELASNYA List Komponen Kontrol GUI (Subkelas dari Component) adalah komponen yang berupa list pilihan yang dapat digulung (scroll). Scrollbar adalah komponen yang dapat digeser secara vertikal maupun horisontal untuk menunjukkan posisi atau suatu nilai TextField TextArea adalah komponen yang digunakan untuk menulis text yang berukuran kecil/singkat. Sama seped TextField, namun memiliki kapasitas lebih besar.

47 KONTAINER Container merupakan subkelas dari Component yang berfungsi untuk "memuat" komponen-komponen lainnya. Kelas ini memiliki beberapa subkelas seperti Panel, Window, Frame, dan sebagainya. Kontainer (Container) Kontainer adalah komponen yang digunakan untuk "memuat" kompcnen atau bahkan kontainer lainnya. Karena sifatnya ini, container dapat diibaratkan sebagai root (akar) dari pohon hierarki komponen yang membentuk aplikasi.

48 Sub kelas dari Container Panel adalah kontainer paling ideal dan sering digunakan untuk "memuat komponen dan kontainer lainrya" dalam suatu hierarki. Applet adalah panel khrsus yang digunakan untuk membuat program yang dijalankan pada browser internet. Window merupakan kelas pada top level window yang tidak memiliki title dan border. Frame merupakan kelas pada top level window yan3 memiliki title bar, menu bar, dan border. Selain itu, frame juga dapat diubah-ubah ukurannya (resize) dan dapat dipindahkan. Dialog merupakan kelas pada top level window yang memiliki satu title bar dan suatu border. Sering digunakan untuk window yang utama untuk aplikasi. Dialog dapat diubai-ubah ukurannya (resize) dan dapat dipindahkan.

49 KELAS CONTAINER Kelas Container lebih sering digunakan dalam merancang tata letak komponen GUI layout Management). Konstruktor: Container()

50 METHOD-METHOD KELAS CONTAINER: Tipe Kembalian Method Kelas Container Component add(component comp) Meng-append suatu komponen pada bagian akhir container ini. Component add(component comp, int index) Menambahkan suatu komponen ke container ini pada posisi yang telah ditentukan. add(component comp, Object constraints) Menambahkan slratu komponen pada bagian akhir container ini. add(component comp, Object constraints, int index) Menambahkan suatu komponen pada container ini dengan suatu konstrain pada indeks yang telah ditentukan. Component add(string name, Component comp) Menambahkan suatu komponen pada container ini. addcontainerlistener(containerlistener l) Menambahkan suatu container listener untuk menerima eventevent dari container ini.

51 METHOD-METHOD KELAS CONTAINER: Tipe Kembalian Method Kelas Container Protected addlmpl(component comp, Object constraints, ini index) Menambahkan suatu component cada container ini pada indeks yang telah ditentukan. addnotify() Membuat Container ini menjadi dapat ditampilkan (displayable) dengan menghubungkannya kepacla suatu native screen resource. add PropertyChan gelistene(propertychange Listener listener) Menambahkan suatu PropertyChangeListener kepada listener list. add Propety ChangeListener(String property Name, PropertyChangeListener listener) Menambahkan suatu PropertyChangelistener pada listener list untuk propety tertentu.

52 METHOD-METHOD KELAS CONTAINER: Tipe Kembalian Method Kelas Container applycomponentorientation(componentorientation o) Mengeset property ComponentOrieniation dari container ini dan semua komponen yang terkandung di dalamnya. boolean arefocustraversalkeysse(int id) Mengembalikan apakah set dari focus traversal keys untuk suatu operasi focus traversal yang diberikan telah secara eksplisit didefinisikan untuk container ini. dolayout() Menyebabkan container ini unluk me-layout konponen komponennya. Component findcomponentat(int x, int y) Menemukan komponen visible child yang mengandung suatu posisi Component findcomponentat(point p) Menemukan visible child component yang berisi titik tertentu.

53 METHOD-METHOD KELAS CONTAINER: Tipe Kembalian Method Kelas Container float float getalignmentx() Mengembalikan alignment sepanjang sumbu x. getalignmenty() Mengembalikan alignment sepanjang sumbu y. Component getcomponent(int n) Mengambil kornponen ke-n dalam container ini. Component getcomponentat(int x, int y) Menemukan komponen yang berisi posisi x.y. Component getcomponentat(point p) Mengambil komponen yang berisi titik tertentu. int Components[] getcomponentcount() Mengambil jumlah komponen dalam panel ini. getcomponents() Mengambil semua komponen dalam container ini.

54 METHOD-METHOD KELAS CONTAINER: Tipe Kembalian Container Listener[] Set Focus Traversal Policy Method Kelas Container getcontainerlisteners() Mengembalikan suatu array dari semua container listeners yang diregistrasi pada container ini. getfocustraversalkeys(int id) Mengembalikan set dari focus traversal keys untuk suatu operasi traversal pada container ini. getfocustraversalpolicy() Mcngembalikan focus traversal policy yang akan mengatur keyboard traversal dari Container's children atau mengembalikan null jika container bukanlah suatu focus cycle root.

55 METHOD-METHOD KELAS CONTAINER: Tipe Kembalian Insets LayoutManager EventListener[] Dimension Dimension Void Method Kelas Container GetInsets() Menentukan inset container yang mengindikasikan ukuran border container. getlayout0 Mengambil layout manager bagi container ini. getlisteners(class listenertype) Mengembalikan suatu array dari semua objek yang sedang diregistrasi sebagai FooListeners berdasarkan container ini getmaximumsize() Mengembalikan ukuran maximum container ini. getpreferredsize() Mengembalikan preferred size container ini. Invalidate() Invalidates the container.

56 METHOD-METHOD KELAS CONTAINER: Tipe Kembalian Method Kelas Container boolean isancestorof (Component c) Memeriksa jika Checks komponen terkandung dalam hierarki komponerrcontainer ini boolean boolean boolean isfocuscycleroot() Mengembalikan apakah container ini adalah root suatu focus traversal cycle. isfocuscycleboot(containercontainer) Mengembalikan apakah suatu container merupakan focus cycle root dari iocus traversal cycle yang dimiliki oleh container ini. isfocustraversalpolicyset() Mengembalikan apakah focus traversal policy telah secara eksplisit diset untuk container ini. list(printstream out, int indent) Mencetak suatu listing dari container ini ke suatu output stream yang telah ditentukan.

57 METHOD-METHOD KELAS CONTAINER: Tipe Kembalian Method Kelas Container list(printwriter out, int indent) Mencetak suatu list, dimulai dari suatu indent, ke suatu print writer. pain(graphics g) Mengecat/mewarnai container. protected String paramstring() Mengembalikan string yang merepresentasikan kondisi/state container ini. print(graphics g) Mencetak container. printcomponents(graphics g) Mencetak (print) komponen-komponen dalam kontainer ini protected processcontainerevent(containerevent e) Memproses container event yang sedang terjadi pada container ini dengan mengirimkan mereka pada sembarang objek Container Listener yang telah diregistrasi.

58 METHOD-METHOD KELAS CONTAINER: Tipe Kembalian Method Kelas Container protected processevent(awtevent e) Memproses event-event pada container ini. remove(component comp) Menghapuskan suatu komponen dari container ini. remove(int index) Menghapuskan suatu kcmponen, pada suatu indeks dari container ini. removeall() Menghapuskan semua komponen dari container ini. removecontainerlistene(containerlistener l) Menghapuskan suatu container listener sehingga tidak lagi menerima container event dari container ini. protected removenotify() Membuat container ini menjadi tidak dapat ditampilkan (undisplayable) dengan memindahkan koneksinya ke native screen resource.

59 METHOD-METHOD KELAS CONTAINER: Tipe Kembalian Method Kelas Container setfocuscycleroot(boolean focuscycleroot) Mengeset apakah container ini merupakan root dari suatu focus traversal cycle setfocustraversalkeys(int id, Set keystrokes) Mengeset focus lraversal keys untuk suatu operasi traversal dari container ini. setfocustraversalpolicy(focustraversalpolicy policy) Mengeset focus traversal policy yang akan mengatur keyboard traversal dari Container's children, jika container ini merupakan suatu focus cycle root. setfont(font f) Mengeset font container ini. setlayout(layoutmanager mgr) Mengeset layout manager untuk container ini.

60 METHOD-METHOD KELAS CONTAINER: Tipe Kembalian Method Kelas Container transferfocus Backward() Memindahkan focus ke komponen sebelumnya, seolah-olah komponen ini adalah focus owner. transf erfocusdowncycle() Memindahkan focus ke bawah satu focus traversal cycle". update(graphics g) Mengupdate container. protected validate() Memvalidasi container ini dan semua subkomponennya validatetree() Secara rekursif menurunkan container tree dan menghitung kembali layout untuk sembarang subtree yang ditandai memerlukannya (yang ditandai berarti invalid).

61 KELAS WINDOW Kelas window tidak dapat disisipkan pada komponen atau kontainer lainnya karena merupakan top level class. Kelas ini jarang digunakan, namun memiliki dua subkelas yang sering dipakai, yaitu kelas Dialog dan kelas Frame.

62 KELAS WINDOW Ada tiga method peting dalam kelas ini. yaitu: 1. pack() Method ini akan mengemas-meng-adjust layout management agar sesuai dengan ukuran subkomponen yang termuat di dalamnya. 2. show() Method ini akan membuat layout dan semua subkomponen yang termuat di dalamnya menjadi visible pada layar monitor dan sekaligus membawanya ke urutan paling muka dari semua aplikasi window yang sedang dijalankan. Secara default, komponen-komponen yang sudah dibuat bersifat invisible, tidak tarnpak pada saat dijalankan. Anda juga bisa memakai method setvisible() untuk meng-enable-kannya, namun method ini tidak otomatis membawa komponen tersebut ke muka layar monitor.

63 KELAS WINDOW 2. show() Secara default, komponen-komponen yang sudah dibuat bersifat invisible, tidak tarnpak pada saat dijalankan. Anda juga bisa memakai method setvisible() untuk meng-enable-kannya, namun method ini tidak otomatis membawa komponen tersebut ke muka layar monitor. 3. dispose() Method ini dipanggil untuk "membebaskan" resource window, setelah Anda selesai menggunakan komponen-komponennya. Method ini tidak berarti menghapuskan objek window terscbut, namun hanya bersifat "menutup" kemungkinan objek-objek tersebut diakses kcmbali setelah operasi selesai dilakukan.

64 KELAS FRAME Seperti yang telah dijelaskan sebelumnya, kelas Frame merupakan subkelas dari kelas window. Frame dapat diubah ukurannya (resize), dapat digerakkan, dan dapat memiliki title bar, icon, dan menu. Konstruktor: Frame(); Frame(String Title);

65 Langkah-langkah bekerja dengan Frame adalah sebagai berikut: 1. Membuat objek Frame. Frame frm = new Frame("FrameTest"); 2. Menambahkan komffien atau panel. frm.add(new Button("Test"); 3. Mengeset ukuran frame. Frm.setSize( 150, 250); 4. Memanggil method pack. frm.pack(); KELAS FRAME 5. Membuat komponen tersebut merrjadi visible. frm.setvisible(true);

66 KELAS PANEL Meskipun Frame merupakan kontainer yang sering digunakan untuk menempatkan komponen secara langsung, naun dalam pengorganisasian tata letak komponen (layout), ada baiknya Anda mengemas komponen-komponen tersebut ke dalarn panel terlebih dahulu. Selanjutnya, panel-panel tersebut Anda menambahkan ke frame

67 SKENARIO LAYOUT MENGGUNAKAN FRAME DAN PANEL

68 KELAS DIALOG Dialog juga merupakan subkelas dari sama seperti Frame, yaitu dapat di-resize dan bisa menambahkan icon atau menu bar. Konstruktor: Dialog( Frame parent); Dialog(Frame parent, boolean modal); Dialog(Frame parent, String title); Dialog(Frame parent, String title,boolean modal);

69 KOMPONEN KONTROL GUI Komponen GUI dalam Java dapat dibagi ke dalam dua kelas besar, yaitu Kelas Component dan Kelas MenuComponent. Kelas Component terdiri dari beberapa komponen kontrol GUI, seperti Button, CheckBox, Choice, TextField, dan lainlain. Komponen kontrol ini digunakan sebagai user interface yang akan ditaruh dalam suatu kontainer. Kelas Menu Component terdiri dari komponen kontrol yang digunakan untuk membuat menu.

70 KOMPONEN KONTROL GUI Langkah-langkah bekerja dengan komponen-komponen tersebut adalah: 1. Membuat objek dari kelas komponen dengan memanggil konstruktornya. Button btn = new Button(' test"); 2. Memuat komponen tersebut ke dalam kontainer. frm.add(btn); 3. Memproses event yang ditrigger oleh user terhadap komponen tersebut. Anda harus menambahkan interface event listener pada listing komponen tersebut untuk membacamendeteksi event, sedangkan untuk memprosesnya dibutuhkan event handler.

71 KELAS COMPONENT Kelas ini rnerupakan basis dari kelas-kelas komponen lainnya. Konstruktor: Konstanta : Component() 1. static float BOTTOM_ALIGNMENT 2. static float CENTER_ALIGNMENT 3. static float LEFT_ALIGNMENT 4. static float RIGHT_ALIGNMENT 5. static float TOP_ALIGNMENT

72 METHOD KELAS COMPONENT: Tipe Kembalian Method Kelas Component add(popupmenupopup) addcomponentlistener(componentlistener) addfocuslistener(focuslistener) addhierarchyboundslistener(hierarchybounds Listener ) addhierarchylistener(hierarchylistener ) addinputmethodlistener(inputmethodlistener ) addkeylistener(keylistener) addmouselistener(mouselistener) addmousemotionlistener(mousemotionlistener ) addmousewheellistener(mousewheellistener ) addnotify() addpropertychangelistener(propertychangelistener listener)

73 METHOD KELAS COMPONENT: Tipe Kembalian boolean int int Protected AWTEvent Method Kelas Component addpropertychangelistene(string propertyname, PropertyChangeListener listener) applycomponentorientation(componentorientation orientation) arefocustraversalkeysset(int id) checklmage(image image, ImageObserver observer) checkimageilmage image, int width, int height, ImageObserver observer) coalesceevents(awtevent existing Event, AWTEvent newevent) boolean contains(int x, int y) boolean contains(point p) Image Image createimage(imageproducer producer) createimage(int width, int height)

74 Tipe Kembalian VolatileImage VolatileImage Protected METHOD KELAS COMPONENT: Method Kelas Component createvolatileimage(int width, int height) createvolatileimage(int width int height, ImageCapabilities caps) disableevents(long eventstodisable) dispatchevent(awtevent e) Protected Protected Protected Protected dolayout() enableevents(long eventstoenable) enableinputmethods (boolean enable) firepropertychange(string propertyname, boolean oldvalue, boolean newvalue) firepropertychange(string propertynsame, int oldvalue, int newvalue) f ireproperty Change(String propertyname, Object oldvalue, Object newvalue)

75 Tipe Kembalian Accessible Context float float Color Rectangle Rectangle ColorModel METHOD KELAS COMPONENT: Method Kelas Component getaccessiblecontext() getalignmentx() getalignmenty() getbackground() getbounds() getbounds(rectangle rv) getcolormodel() Component getcomponentat(int x, int y) Component getcomponentat(point p) Component Listener[ ] getcomponentlisteners()

76 METHOD KELAS COMPONENT: Tipe Kembalian Component Orientation Cursor DropTarget Container FocusListener[] Set boolean Font FontMetrics Color Graphics Graphics Configuration Method Kelas Component getcomponentorientation() getcursor() getdroptarget() getfocuscyclerootancestor() getfocuslisteners() getfocustraversalkeys(int id) getfocustraversalkeysenabled() getfont() getfontmetrics(font font) getforeground() getgraphics() getgraphicsconfiguration()

77 METHOD KELAS COMPONENT: Tipe Kembalian int Hierarchy Bounds Listener[] HierarchyListener[] boolean InputContext InputMethod Listener[] InputMethod Requests KeyListener[] EventListener[] Locale Method Kelas Component getheight() gethierarchyboundslisteners() gethierarchylisteners() getignorerepaint() getlnputcontext() getinputmethodlisteners() getinputmethodrequests() getkeylisteners() getlisteners(class listenertype) getlocale()

78 METHOD KELAS COMPONENT: Tipe Kembalian Point Point Point Dimension Dimension MouseListener[] MouseMotion Listener[] MouseWheel Listener[] String Container Dimension Method Kelas Component getlocation() getlocation(point rv) GetLocationOnScreen() getmaximumsize() getminimumsize() getmouselisteners() getmousemotionlisteners() getmousewheellisteners() getname() getparent() getpreferredsize()

79 METHOD KELAS COMPONENT: Tipe Kembalian Property Change Listener[] Property Change Listener[] Dimension Dimension Toolkit Object int int int boolean boolean Method Kelas Component getpropertychangelisteners() getpropertychangelisteners(string properlyname) getsize() getsize(dimension rv) gettoolkit() gettreelock() getwidth() setx() sety() hasfocus() imageupdate(image img, int infoflags, int x, int y, int w, int h)

80 METHOD KELAS COMPONENT: Tipe Kembalian boolean boolean boolean boolean boolean boolean boolean boolean boolean boolean boolean boolean boolean Method Kelas Component invalidate() isbackgroundset() iscursorset() isdisplayable() isdoublebuff ered() isenabled() isfocusable() isfocuscycleroot(container container) isfocusowner() isfontset() isforegroundset() isfocusowner() isfontset() isforegroundset()

81 METHOD KELAS COMPONENT: Tipe Kembalian Method Kelas Component boolean islightweight() boolean isopaque() boolean isshowing() boolean isvalid() isvisible() list() list(printstream out) list(printstream out, int indent) list(printwriter out) list(printwriter out, int indent) paint(graphics g) paintall(graphics g) protected String paramstring()

82 METHOD KELAS COMPONENT: Tipe Kembalian boolean Method Kelas Component prepareimage(image image, int width, int height, ImageObserver observer) print(graphics g) printall(graphics g) protected processcomponentevent(componentevent e) protected processevent(awt Event e) protected processfocusevent(focus Event e) protected processhierarchybounds Event(HierarchyEvent e) protected processhierarchyevent(hierarchyevent e) protected processinputmethodevent(lnputmethod Event e) protected processkeyevent(keyevent e) protected processmouseevent(mouseevent e) protected processmousemotionevent(mouseevent e) protected processmousewheelevent(mousewheelevent e)

83 METHOD KELAS COMPONENT: Tipe Kembalian Method Kelas Component remove(menucomponent popup) removecomponentlistener(componentlistener l) removefocuslistener(focuslistener l) removehierarchyboundslistener(hierarchybounds Listener l) removehierarchylistener(hierarchylistener l) removeinputmethodlistener(inputmethodlistener l) removekeylistener(keylistener l) removemouselistener(mouselistener l) removemousemotionlistener(mousemotionlistener l) removemousewheellistener(mousewneellistener l) removenotify() removepropertychangelistener(propetvchan ge Listener listener)

84 METHOD KELAS COMPONENT: Tipe Kembalian protected boolean boolean protected boolean Method Kelas Component removepropertychangelistener(string propertynamepropertychangelistener listener) repaint() repaint(int x, int y, int width, int height) repaint(long tm) repaint(long tm. int x, int y, int width, int height) requestfocus() requestfocus(boolean temporary) requestfocuslnwindow() requestfocuslnwindow(boolean temporary) setbackground(color c) setboundg(int x, int y, int width, int height) setbounds(rectangle r) setcomponentorientation(componentorientation o)

85 METHOD KELAS COMPONENT: Tipe Kembalian Method Kelas Component setcursor(cursor cursor) setdroptarget(droptarget dt) setenabled(boolean b) setfocusable(boolean focusable) setfocustraversalkeys(int id, Set keystrokes) setfocustraversalkeysenabled(boolean focustraversalkeys Enabled) setfont(font f) setforeground(color c) setignorerepaint(boolean ignorerepaint) setlocale(locale l) setlocation(int x, int y) setname(string name)

86 METHOD KELAS COMPONENT: Tipe Kembalian Method Kelas Component setsize(dimension d) setsize(int width, int height) setvisible(boolean b) tostring() tansferfocus() transferfocusbackward() transferfocusupcycle() update(graphics g) validate()

87 METHOD KELAS COMPONENT: Konstruktor: Button( ) Button(String Label) Method yang dapat digunakan untuk mengeset label adalah: String getlabel( ) setlabel(string label)

88 Tipe Kembalian Deskripsi Kelas Button addaction Listene(ActionListener l) Menambahkan action listener untuk mendeteksi action event yang berasal dari button ini Accessible Context String ActionListener String METHOD KELAS BUTTON: addnotify() Menciptakan peer dari button ini. getaccessiblecontext() Mengambil AccessibleContext yang diasosiasikan dengan button ini. getactioncommand() Mengembalikan nama command dari action event yang ditrigger oleh button ini. getactionlistener() Mengembalikan array dari action listener yang didaftarkan (diregistrasi) untuk button ini. getlabel() Mengambil label dari button ini.

89 Tipe Kembalian EventListener[] protected String METHOD KELAS BUTTON: Deskripsi Kelas Button getlisteners(class listenertype) Mengembalikan array dari semua objek yang sedang didaftarkan (diregistrasi) sebagal FooListeners pada Button ini. paramstring() Mengembalikan string yang merepresentasikan keadaan (state) dari Button ini. protected processaction Event(Action Event e) Memproses action event-action event yang terjadi pada button ini dengan mengirimkan mereka kepada sembarang objek ActionListener yang telah terdaftar. protected processevent(awtevent e) Memproses event-event pada button ini. removeactionlistener(actionlistener I) Menghapuskan action listener tertentu, sehingga tidak lagi menerima action event dari buttor ini.

90 METHOD KELAS BUTTON: Tipe Kembalian Deskripsi Kelas Button setactioncommand(string command) Mengeset nama command untuk action event yang ditriger oleh button ini. setlabel(stringlabel) Mengeset label bulton dengan suatu string.

91 LATIHAN 78

92 import java.awt.*; public class TesButton extends Frame { public static main(string[] args) { TesButton apl = new TesButton(); } public TesButton() { super("tes Button"); setsize(300, 100); Panel paneltombol = new Panel(); paneltombol.add(new Button("Perbesar")); paneltombol.add(new Button("Selesai")); add("south", paneltombol); } } show(); Estu Sinduningrum, ST, MT

93 LATIHAN 79

94 import java.awt.*; public class TesButton2 extends Frame { int lebar = 300; int tinggi= 100; public static main(string[] args) { TesButton2 apl = new TesButton2(); } public TesButton2() { super("tes Button"); setsize(lebar, tinggi); Panel paneltombol = new Panel(); paneltombol.add(new Button("Perbesar")); paneltombol.add(new Button("Selesai")); add("south", paneltombol); } show(); public boolean handleevent(event kejadian) { switch (kejadian.id) { case Event.WINDOW_DESTROY: System.exit(0); return true; case Event.ACTION_EVENT: if (kejadian.target instanceof Button) { if ("Perbesar".equals(kejadian.arg)) { lebar += 20; tinggi += 10; setsize(lebar, tinggi); } else if ("Selesai".equals(kejadian.arg)) { System.exit(0); return true; } } } return false; } } Estu Sinduningrum, ST, MT

95 LATIHAN 80

96 import java.awt.*; import java.awt.event.*; public class TesButton3 extends Frame { int lebar = 300; int tinggi= 100; public static main(string[] args) { TesButton3 apl = new TesButton3(); } public TesButton3() { super("tes Button"); setsize(lebar, tinggi); Button tombolperbesar = new Button("Perbesar"); Button tombolselesai = new Button("Selesai"); Panel paneltombol = new Panel(); paneltombol.add(tombolperbesar); paneltombol.add(tombolselesai); add("south", paneltombol); // --- Penanganan kejadian tombolperbesar.addactionlistener( new TesButton3.PenanganTombol()); tombolselesai.addactionlistener( new TesButton3.PenanganTombol()); addwindowlistener( new TesButton3.PenanganKejadian()); // --- Tampilkan frame show(); } class PenanganKejadian extends WindowAdapter { public windowclosing(windowevent e) { System.exit(0); } } class PenanganTombol implements ActionListener { public actionperformed(actionevent e ) { String s = e.getactioncommand(); if (s.equals("perbesar")) { lebar += 20; tinggi += 10; setsize(lebar, tinggi); } else if (s.equals("selesai")) { System.exit(0); } } } } Estu Sinduningrum, ST, MT

97 LATIHAN 81

98 import java.awt.*; import java.awt.event.*; public class TesCheckBox extends Frame { Checkbox cb1, cb2, cb3; TextArea tarea; public static main(string[] args) { TesCheckBox apl = new TesCheckBox(); } public TesCheckBox() { super("tes Checkbox"); setsize(400, 120); cb1 = new Checkbox("Java"); cb2 = new Checkbox("C++"); cb3 = new Checkbox("PHP"); tarea = new TextArea("",3, 35, TextArea.SCROLLBARS_NONE); tarea.seteditable(false); Panel p1 = new Panel(); p1.setlayout(new GridLayout(3,1)); p1.add(cb1); p1.add(cb2); p1.add(cb3); Panel p2 = new Panel(); p2.add(tarea); add("west", p1); add("east", p2); cb1.additemlistener( new TesCheckBox.PenanganItem()); cb2.additemlistener( new TesCheckBox.PenanganItem()); cb3.additemlistener( new TesCheckBox.PenanganItem()); Estu Sinduningrum, ST, MT

99 // --- Tampilkan frame show(); } public tampilkaninfo() { String scb1, scb2, scb3; scb1 = "Status Java: " + cb1.getstate(); scb2 = "Status C++: " + cb2.getstate(); scb3 = "Status PHP: " + cb3.getstate(); tarea.settext(scb1 + "\n" + scb2 + "\n" + scb3); } class PenanganItem implements ItemListener { public itemstatechanged(itemevent e ) { Object o = e.getitem(); if (o.equals("java")) { tampilkaninfo(); } else if (o.equals("c++")) { tampilkaninfo(); } else if (o.equals("php")) { tampilkaninfo(); } } } }

100 TERIMA KASIH

KELAS INNER, KELAS ABSTRAK, DAN INTERFACE. 16 th week Estu Sinduningrum ST,MT

KELAS INNER, KELAS ABSTRAK, DAN INTERFACE. 16 th week Estu Sinduningrum ST,MT KELAS INNER, KELAS ABSTRAK, DAN INTERFACE 16 th week Estu Sinduningrum ST,MT KELAS INNER (INNER CLASS) Kerangka umum program yang berorientasi objek. Sejauh ini Anda mengetahui bahwa dalam satu file *java

Lebih terperinci

GUI (Grapichal User Interface)

GUI (Grapichal User Interface) 1 GUI (Grapichal User Interface) Pengantar GUI GUI (Graphical User Interface), memungkinkan user untuk berinteraksi dengan komputer secara lebih baik. Pengguna berinteraksi dengan berbagai elemen grafis,diantaranya:

Lebih terperinci

GUI & Event Handling. Viska Mutiawani, M.Sc. 1 Viska Mutiawani - Informatika FMIPA Unsyiah

GUI & Event Handling. Viska Mutiawani, M.Sc. 1 Viska Mutiawani - Informatika FMIPA Unsyiah GUI & Event Handling Viska Mutiawani, M.Sc 1 Viska Mutiawani - Informatika FMIPA GUI pada Java GUI (Graphical User Interface) pada Java umumnya menggunakan kelas dari package javax.swing dan java.awt.

Lebih terperinci

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK Deskripsi Singkat Praktikum pemrograman berorientasi objek adalah praktikum yang menggunakan bahasa Java sebagai bantuan dalam memahami konsep pemrograman

Lebih terperinci

GUI Event Handling. minggu 13. Wednesday, 16 May 12

GUI Event Handling. minggu 13. Wednesday, 16 May 12 GUI Event Handling minggu 13 Objectives / Tujuan Mengenal The Delegation Event Model Mengenal Event Classes Mengenal Event Listener: ActionListener Method MouseListener Method MouseMotionListener Method

Lebih terperinci

2. Manakah diantara pilihan berikut ini yang merupakan bagian dari event delegation model? Sebuah komponen yang menampilkan message

2. Manakah diantara pilihan berikut ini yang merupakan bagian dari event delegation model? Sebuah komponen yang menampilkan message Waktu Sisa : 1:14:5 1. Pilih instruksi yang dapat digunakan dalam method actionperformed untuk membedakan antara tombol buttonone dan buttontwo. 2. Manakah diantara pilihan berikut ini yang merupakan bagian

Lebih terperinci

Pemrograman Lanjut. Intro to GUI (Graphical User Interface)

Pemrograman Lanjut. Intro to GUI (Graphical User Interface) Pemrograman Lanjut Intro to GUI (Graphical User Interface) PTIIK - 2014 2 Objectives Memahami struktur hirarki class GUI Mampu menjelaskan setiap komponen (class) yang terdapat pada struktur hirarki GUI

Lebih terperinci

DIK-020 Pemograman Berorientasi Objek 5/24/2012

DIK-020 Pemograman Berorientasi Objek 5/24/2012 Topik JAVA Education Network Indonesia GUI Event Handling Pengenalan Pemrograman 2 Class-class Event Event Listeners Method ActionListener Method MouseListener Method MouseMotionListener Method WindowListener

Lebih terperinci

Membuat User Interface dengan Swing. Program yang dibuat sebelumnya selalu berbasis console User lebih senang berinteraksi dengan

Membuat User Interface dengan Swing. Program yang dibuat sebelumnya selalu berbasis console User lebih senang berinteraksi dengan Topik Memahami komponen dasar swing Memahami implementasi swing dalam program Mengimplementasikan button, check box, dan radio button dalam program Mengimplementasikan label,text Field dan Password Field

Lebih terperinci

Bab Tujuan. 8.2 Delegation Event Model

Bab Tujuan. 8.2 Delegation Event Model Bab 8 GUI Event Handling 8.1 Tujuan Pada modul ini, Anda akan belajar bagaimana mengendalikan events triggered ketika user berinteraksi dengan aplikasi GUI Anda. Setelah menyelesaikan modul ini, Anda akan

Lebih terperinci

Materi : GUI AWT & SWING.

Materi : GUI AWT & SWING. Materi : GUI AWT & SWING http://luemut4n.0fees.net Selain untuk pemrograman yang berbasis konsol, java juga mendukung pemrograman berbasiskan GUI (Graphical User Interface), Salah satunya menggunakan AWT

Lebih terperinci

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN 2

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN 2 No. LST/EKA/PTI208/06 Revisi : 02 Maret 2010 Hal 1 dari 6 A. Kompetensi Setelah mengikuti praktikum ini, mahasiswa diharapkan memahami konsep grapichal user interface (GUI) dan mampu mendesain GUI menggunakan

Lebih terperinci

Modul 8: awt. Setelah mengikuti mata kuliah ini mahasiswa dapat membuat program sederhana dalam lingkungan window. Modul 8 - awt 1

Modul 8: awt. Setelah mengikuti mata kuliah ini mahasiswa dapat membuat program sederhana dalam lingkungan window. Modul 8 - awt 1 Modul 8: awt Setelah mengikuti mata kuliah ini mahasiswa dapat membuat program sederhana dalam lingkungan window Modul 8 - awt 1 Pengantar : Dalam modul ini akan diuraikan beberapa topik bahasan yaitu

Lebih terperinci

GUI & Event Handling. Viska Mutiawani, M.Sc

GUI & Event Handling. Viska Mutiawani, M.Sc GUI & Event Handling Viska Mutiawani, M.Sc GUI pada Java GUI (Graphical User Interface) pada Java umumnya menggunakan kelas dari package javax.swing dan java.awt. AWT dan Swing dapat dipergunakan untuk

Lebih terperinci

PERTEMUAN VI AWT DAN SWING TUJUAN PRAKTIKUM. 1. Praktikan mengenal pembuatan GUI pada Java. 2. Praktikan memahami action pada objek dalam Java.

PERTEMUAN VI AWT DAN SWING TUJUAN PRAKTIKUM. 1. Praktikan mengenal pembuatan GUI pada Java. 2. Praktikan memahami action pada objek dalam Java. PERTEMUAN VI AWT DAN SWING TUJUAN PRAKTIKUM 1. Praktikan mengenal pembuatan GUI pada Java. 2. Praktikan memahami action pada objek dalam Java. Selain untuk pemrograman yang berbasis konsol, java juga mendukung

Lebih terperinci

GUI Event Handling. 5. Mendiskusikan keuntungan-keuntungan dari menggunakan inner dan anonymous class

GUI Event Handling. 5. Mendiskusikan keuntungan-keuntungan dari menggunakan inner dan anonymous class GUI Event Handling Pada modul ini, Anda akan belajar bagaimana mengendalikan events triggered ketika user berinteraksi dengan aplikasi GUI Anda. Setelah menyelesaikan modul ini, Anda akan dapat mengembangkan

Lebih terperinci

AWT (ABSTRACT WINDOWS TOOLKITS)

AWT (ABSTRACT WINDOWS TOOLKITS) AWT (ABSTRACT WINDOWS TOOLKITS) Pendahuluan Pada pertemuan kali ini, kita akan membahas paket AWT sebuah paket yang telah ada dalam Java yang dapat digunakan untuk merancang GUI (Graphical User Interface).

Lebih terperinci

BAB IX MEMBUAT FORM 9.1 Membuat Form Secara Konvensional

BAB IX MEMBUAT FORM 9.1 Membuat Form Secara Konvensional BAB IX MEMBUAT FORM 9.1 Membuat Form Secara Konvensional GUI (Graphical User Interface), memungkinkan user untuk berinteraksi dengan komputer secara lebih baik. Pengguna dapat berinteraksi dengan berbagai

Lebih terperinci

Abstract Window Toolkit

Abstract Window Toolkit Graphical User Interface (GUI) Oleh: Ali Ridho Barakbah Pemrograman Berbasis Obyek Pertemuan 14 IT-EEPIS Abstract Window Toolkit Menyediakan komponen-komponen GUI yang digunakan di semua aplikasi Java

Lebih terperinci

Membangun GUI (dengan AWT & Swing) OOP Java

Membangun GUI (dengan AWT & Swing) OOP Java Membangun GUI (dengan AWT & Swing) OOP Java Materi yg akan dibahas : Pendahuluan Event-driven Programming AWT, Swing & SWT Komponen-komponen GUI Layout manager Pendahuluan (1) Graphical User Interface

Lebih terperinci

PEMROGRAMAN II. Materi : nursari2010.blogdetik.com String String Handling Java.util,Java.io. By : Sri Rezeki Candra Nursari

PEMROGRAMAN II. Materi : nursari2010.blogdetik.com String String Handling Java.util,Java.io. By : Sri Rezeki Candra Nursari PEMROGRAMAN II By : Sri Rezeki Candra Nursari Materi : nursari2010.blogdetik.com String String Handling Java.util,Java.io AWT Event Windows Graphics Text Control Layout Manager Menu Image New I/O Reguler

Lebih terperinci

BAB IX. USER INTERFACE

BAB IX. USER INTERFACE BAB IX. USER INTERFACE 9.1.Dasar GUI Program GUI (Graphical User Interface) merupakan metode pendesainan program ke dunia nyata (real world) atau visual bukan dalam bentuk console. Paket yang dapat digunakan

Lebih terperinci

Dasar Perancangan Graphical User Interface

Dasar Perancangan Graphical User Interface Dasar Perancangan Graphical User Interface Restyandito e-mail : dito@ukdw.ac.id website : http://lecturer.ukdw.ac.id/~dito GUI (Graphical User Interface), memungkinkan user untuk berinteraksi dengan komputer

Lebih terperinci

GARIS-GARIS BESAR PROGRAM PERKULIAHAN (GBPP)

GARIS-GARIS BESAR PROGRAM PERKULIAHAN (GBPP) GARIS-GARIS BESAR PROGRAM PERKULIAHAN (GBPP) Mata Kuliah: Pemrograman Berorientasi Objek; Kode/Bobot: TSK 502 / 3 sks; Deskripsi Mata Kuliah: Mata kuliah ini berisi konsep pemrograman berorientasi objek

Lebih terperinci

A. TUJUAN PEMBELAJARAN

A. TUJUAN PEMBELAJARAN PRAKTIKUM 29 GUI: KALKULATOR MINI A. TUJUAN PEMBELAJARAN 1. Memahami konsep Graphical User Interface (GUI). 2. Mampu membuat program yang menerapkan konsep GUI. 3. Mampu membuat program berbasis GUI yang

Lebih terperinci

BAB I PENDAHULUAN. Listing 1.1 menunjukkan program GUI Java sederhana menggunakan AWT. import java.awt.*; import java.awt.event.*;

BAB I PENDAHULUAN. Listing 1.1 menunjukkan program GUI Java sederhana menggunakan AWT. import java.awt.*; import java.awt.event.*; BAB I PENDAHULUAN 1.1. Bahasa Pemrograman Java Java memiliki dua fasilitas untuk pemrograman GUI: AWT dan Swing. Versi awal Java memberikan dukungan grafik yang terbatas. Hanya fitur-fitur grafik minimal

Lebih terperinci

Membuat Menu Login Sederhana [Full Coding]

Membuat Menu Login Sederhana [Full Coding] Membuat Menu Login Sederhana [Full Coding] Oleh: Yudi Setiawan Pada tutorial, ini saya berusaha mengajari Anda secara lebih keras lagi agar Anda mempunyai bekal ilmu dasar yang kuat di ilmu pemrograman

Lebih terperinci

MODUL 7 - EXCEPTION HANDLING

MODUL 7 - EXCEPTION HANDLING DESKRIPSI MATERI Modul 7 yang berjudul Exception Handling ini memaparkan tentang bagaimana cara menangkap kesalahan saat program dijalankan agar jalannya program tidak keluar begitu saja dari alur yang

Lebih terperinci

IF PEMROGRAMAN LANJUT EVENT. Oleh : Andri Heryandi, M.T.

IF PEMROGRAMAN LANJUT EVENT. Oleh : Andri Heryandi, M.T. IF34348 - PEMROGRAMAN LANJUT EVENT 13 Oleh : Andri Heryandi, M.T. EVENT Event adalah suatu kejadian dimana kondisi dari suatu objek berubah. Event dibuat sebagai hasil interaksi user dengan komponen GUI.

Lebih terperinci

PENGENALAN JAVA GUI PROGRAMMING

PENGENALAN JAVA GUI PROGRAMMING PENGENALAN JAVA GUI PROGRAMMING Sub Pokok Bahasan JFC AWT Swing Ilustrasi JFC (Java Founda=on Classes) Java Founda=on Class Merupakan framework dalam Java untuk mengembangkan aplikasi berbasis GUI (Graphical

Lebih terperinci

INSTRUKSI PENCABANGAN

INSTRUKSI PENCABANGAN INSTRUKSI PENCABANGAN Sebagai pengembang (programmer) sudah pasti mengetahui jenis operasi instruksi. Salah satu yang perlu dipelajari atau dimengerti adalah operasi instruksi pencabangan. 3.1 Pencabangan

Lebih terperinci

Paket dan Interface. 15 th week Estu Sinduningrum ST,MT

Paket dan Interface. 15 th week Estu Sinduningrum ST,MT Paket dan Interface 15 th week Estu Sinduningrum ST,MT Mengimpor paket yang Telah Dibuat ke dalam program Langkah-langkah Mengimpor paket yang Telah Dibuat ke dalam program Berikut ini contoh kode program

Lebih terperinci

1 of 7 2/23/2008 4:21 PM Waktu Sisa : 0:59:54 1. Interface manakah yang harus diimplementasikan Java class untuk menerima notifikasi button click event? ActionListener ButtonListener KeyListener WindowListener

Lebih terperinci

PEMROGRAMAN BERORIENTASI OBJEK

PEMROGRAMAN BERORIENTASI OBJEK MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK NINF615 SEMESTER GASAL 2016/2017 PROGRAM STUDI S1 TEKNIK INFORMATIKA MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK DISUSUN OLEH: Tim Asisten Praktikum Jurusan

Lebih terperinci

1. Mana dari adapter berikut ini yang merupakan class adapter yang benar didalam Java. ComponentAdapter

1. Mana dari adapter berikut ini yang merupakan class adapter yang benar didalam Java. ComponentAdapter GUI Waktu Sisa : 1:53:37 1. Mana dari adapter berikut ini yang merupakan class adapter yang benar didalam Java. ComponentAdapter ActionAdapter AdjustmentAdapter ItemAdapter FocusAdapter 2. Method dari

Lebih terperinci

J2ME GUI dan Manajemen Event

J2ME GUI dan Manajemen Event J2ME GUI dan Manajemen Event Muhammad Zen S. Hadi, ST. MSc. Contents J2ME (Review) Manajemen Event GUI dalam J2ME Passing parameter di dalam J2ME 2 Arsitektur Jaringan dgn J2ME 3 Design Aplikasi vmiles

Lebih terperinci

PAKET (PACKAGE) 20 Januari 2012

PAKET (PACKAGE) 20 Januari 2012 PACKAGE PAKET (PACKAGE) Suatu package adalah bendel atau pengelompokan kelaskelas berdasarkan kesamaan atau kemiripan fungsi Java mempunyai fitur paket agar kelas diorganisasikan secara logikal dalam suatu

Lebih terperinci

KARAKTERISTIK PEMROGRAMAN BERORIENTASI OBJEK (OOP) Pemrograman berorientasi Objek mempunyai karakterisitik sebagai berikut:

KARAKTERISTIK PEMROGRAMAN BERORIENTASI OBJEK (OOP) Pemrograman berorientasi Objek mempunyai karakterisitik sebagai berikut: KARAKTERISTIK PEMROGRAMAN BERORIENTASI OBJEK (OOP) Pemrograman berorientasi Objek mempunyai karakterisitik sebagai berikut: a. Abstraksi (abstraction) b. Pembungkusan (encapsulation) c. Pewarisan (inheritence)

Lebih terperinci

A. TUJUAN PEMBELAJARAN

A. TUJUAN PEMBELAJARAN PRAKTIKUM 27 ANTAR MUKA GRAFIS A. TUJUAN PEMBELAJARAN 1. Memahami konsep Graphical User Interface (GUI). 2. Mampu membuat program yang menerapkan konsep GUI. 3. Mampu membuat program berbasis GUI yang

Lebih terperinci

A. TUJUAN PEMBELAJARAN

A. TUJUAN PEMBELAJARAN PRAKTIKUM 28 PENANGANAN EVENT A. TUJUAN PEMBELAJARAN 1. Memahami konsep Graphical User Interface (GUI). 2. Mampu membuat program yang menerapkan konsep GUI. 3. Mampu membuat program berbasis GUI yang melibatkan

Lebih terperinci

Percobaan 7 GUI(Graphical User Interface )

Percobaan 7 GUI(Graphical User Interface ) Percobaan 7 GUI(Graphical User Interface ) Pokok Bahasan komponen dasar swing JButton,JCheckBox, dan JRadioButton JLabel, JTextField dan JPassword Field JTextArea, JComboBox, JList Memahami tentang event/kejadian

Lebih terperinci

Creating Graphical User Interfaces [1] with Java By: De Rosal Ignatius Moses Setiadi

Creating Graphical User Interfaces [1] with Java By: De Rosal Ignatius Moses Setiadi Creating Graphical User Interfaces [1] with Java By: De Rosal Ignatius Moses Setiadi The Mathematical Concept of GUIs APIs for Java GUI Anatomy of GUI Application Top-Level Containers Using Swing Components

Lebih terperinci

GUI in Java. Presented by HCI Team Ali Ridho Barakbah Umi Sa adah Nur Rosyid Mubtada i. Supervised by Prof. Kohei Arai

GUI in Java. Presented by HCI Team Ali Ridho Barakbah Umi Sa adah Nur Rosyid Mubtada i. Supervised by Prof. Kohei Arai GUI in Java Presented by HCI Team Ali Ridho Barakbah Umi Sa adah Nur Rosyid Mubtada i Supervised by Prof. Kohei Arai Abstract Window Toolkit Menyediakan komponen-komponen GUI yang digunakan di semua aplikasi

Lebih terperinci

1. Manakah jawaban yang benar,pada saat Anda mengcompile dan menjalankan class berikut ini:

1. Manakah jawaban yang benar,pada saat Anda mengcompile dan menjalankan class berikut ini: 1. Manakah jawaban yang benar,pada saat Anda mengcompile dan menjalankan class berikut ini: Program dapat di-compile dan output-nya adalah 5 Program dapat di-compile dan output-nya adalah 6 Program akan

Lebih terperinci

Modul Praktikum 7 Pemograman Berorientasi Objek

Modul Praktikum 7 Pemograman Berorientasi Objek Modul Praktikum 7 Pemograman Berorientasi Objek 1. Judul : Grapichal User Interface (GUI) 2. Tujuan Percobaan : Diakhir praktikum, mahasiswa diharapkan mampu : Memahami persamaan dan perbedaan antara AWT

Lebih terperinci

BAB I PENDAHULUAN. Maksud dan tujuan dari pembuatan Aplikasi Penentu Nilai Mahasiswa pada pemrograman java adalah:

BAB I PENDAHULUAN. Maksud dan tujuan dari pembuatan Aplikasi Penentu Nilai Mahasiswa pada pemrograman java adalah: A i T i t i n 1 1.1 Latar Belakang BAB I PENDAHULUAN Kemajuan ilmu dan teknologi saat ini begitu pesat perkembangannya. Dengan perkembangan zaman, banyak orang yang membutuhkan kecepatan akses data sehingga

Lebih terperinci

GUI Event Handling 1

GUI Event Handling 1 1 GUI Event Handling Pengantar Event Handling Aplikasi GUI bersifat event driven Saat user berinteraksi dengan komponen GUI, interaksi tsb dikenal sbg event, akan memicu program untuk melaksanakan sebuah

Lebih terperinci

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN JAVA 2

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN JAVA 2 No. LST/EKA/PTI208/09 Revisi : 01 April 2009 Hal 1 dari 7 A. Kompetensi Setelah mengikuti praktikum ini, mahasiswa diharapkan mampu memahami Grapichal User Interface (GUI) dan mendesain GUI menggunakan

Lebih terperinci

Modul Praktikum 9 BAB IX LAYOUTING. Departemen Teknologi Informasi Telkom Applied Science School H a l

Modul Praktikum 9 BAB IX LAYOUTING. Departemen Teknologi Informasi Telkom Applied Science School H a l 9 BAB IX LAYOUTING 9.1 IDENTITAS Kajian Komponen Swing Java non-visual Editor; Database & Swing Topik 1. Layout Grid, GridBag dan Border Referensi 1. http://docs.oracle.com/javase/tutorial/uiswing/layout/index

Lebih terperinci

MODUL PRAKTIKUM BERORIENTASI OBJEK NINF615 SEMESTER GASAL 2016/2017 PROGRAM STUDI S1 TEKNIK INFORMATIKA

MODUL PRAKTIKUM BERORIENTASI OBJEK NINF615 SEMESTER GASAL 2016/2017 PROGRAM STUDI S1 TEKNIK INFORMATIKA MODUL PRAKTIKUM BERORIENTASI OBJEK NINF615 SEMESTER GASAL 2016/2017 PROGRAM STUDI S1 TEKNIK INFORMATIKA MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK DISUSUN OLEH: Tim Asisten Praktikum Jurusan Teknik

Lebih terperinci

BAB II VARIABEL DAN TIPE DATA

BAB II VARIABEL DAN TIPE DATA BAB II VARIABEL DAN TIPE DATA Bahasa pemrograman pada umumnya, mengenal adanya variabel yang digunakan untuk menyimpan nilai atau data. Sedangkan Java sendiri dikenal sebagai bahasa pemrograman dengan

Lebih terperinci

PEMROGRAMAN JAVA : VARIABEL DAN TIPE DATA

PEMROGRAMAN JAVA : VARIABEL DAN TIPE DATA PEMROGRAMAN JAVA : VARIABEL DAN TIPE DATA Asep Herman Suyanto info@bambutechno.com http://www.bambutechno.com Bahasa pemrograman pada umumnya, mengenal adanya variabel yang digunakan untuk menyimpan nilai

Lebih terperinci

Gambar 1. Deklarasi Interface MouseListener

Gambar 1. Deklarasi Interface MouseListener INTERFACE Interface adalah kumpulan method yang memuad deklarasi dan struktur method, juga field-field tanpa detail implementasinya. Interface digunakan bila ingin mengaplikasikan suatu method yang spesifik

Lebih terperinci

GRAPHICAL USER INTERFACE (GUI)

GRAPHICAL USER INTERFACE (GUI) GRAPHICAL USER INTERFACE (GUI) Pokok Bahasan 1. komponen dasar swing 2. JButton,JCheckBox, dan JRadioButton 3. JLabel, JTextField dan JPassword Field 4. JTextArea, JComboBox, JList 5. Memahami tentang

Lebih terperinci

Modul 08. User Interface 01

Modul 08. User Interface 01 Modul 08 User Interface 01 Materi : 1. Mengenal dan mengetahui komponen package awt dan swing untuk membuat user interface 1. Konsep Dasar Swing dan awt merupakan package yang berguna untuk membangun aplikasi

Lebih terperinci

E-Book PEMROGRAMAN BERORIENTASI OBJEK. Disusun Oleh: Arfian Hidayat, S.Kom

E-Book PEMROGRAMAN BERORIENTASI OBJEK. Disusun Oleh: Arfian Hidayat, S.Kom E-Book PEMROGRAMAN BERORIENTASI OBJEK Disusun Oleh: Arfian Hidayat, S.Kom http://arfianhidayat.com FAKULTAS ILMU KOMPUTER UNIVERSITAS DIAN NUSWANTORO SEMARANG 2013 Daftar Isi Daftar Isi... i Daftar Gambar...

Lebih terperinci

MODUL 3 PEWARISAN TUJUAN DASAR TEORI

MODUL 3 PEWARISAN TUJUAN DASAR TEORI MODUL 3 PEWARISAN TUJUAN Setelah menyelesaikan modul ini, praktikan dapat: Memahami pewarisan tunggal dan jamak dalam pemrograman java. Mampu mengimplementasikan pewarisan tunggal dalam bahasa pemrograman

Lebih terperinci

Pemrograman Java III

Pemrograman Java III Pemrograman Java III Model Perhitungan Goemetri Berbasis Java Tugas ini disusun untuk Memenuhi Salah Satu Syarat Penilaian Mata Kuliah Pemrograman Java III Fakultas Teknik Informatika Semester Ganjil Ajaran

Lebih terperinci

Pengenalan JavaScript

Pengenalan JavaScript Pengenalan JavaScript Tujuan - Mahasiswa memahami konsep dasar Javascript - Mahasiswa mampu memahami cara menggunakan Javascript - Mahasiswa mampu memahami dasar variabel di Javascript - Mahasiswa mampu

Lebih terperinci

Object Oriented Pemrograman yang mendukung konsep objek. (inheritance, capsulation, polymorphism)

Object Oriented Pemrograman yang mendukung konsep objek. (inheritance, capsulation, polymorphism) Komponen Swing I Object Oriented Pemrograman yang mendukung konsep objek. (inheritance, capsulation, polymorphism) WORE (Write Once Run Everywhere) Program hasil kompilasi dapat dijalankan pada berbagai

Lebih terperinci

IKG2I4 / Software Project I

IKG2I4 / Software Project I IKG2I4 / Software Project I Mahmud Imrona, M.T. Izzatul Ummah, M.T. Kelompok Keahlian Algoritma dan Komputasi LECTURE NOTE WEEK 6 1 3/11/2015 WEEK 6 Abstract Class Interface Exception 2 3/11/2015 ABSTRACT

Lebih terperinci

2 TIPE DATA DAN VARIABEL

2 TIPE DATA DAN VARIABEL BAB 2 TIPE DATA DAN VARIABEL Kompetensi Dasar dan Indikator : Setelah mengikuti materi kuliah ini mahasiswa mampu menggunakan tipe data dan variable yang ada dalam Java, dengan indikator mahasiswa mampu:

Lebih terperinci

Apa yang menjadi output potongan kode diatas? Error karena tidak ada String yang di-passing kedalam konstruktor Bapak

Apa yang menjadi output potongan kode diatas? Error karena tidak ada String yang di-passing kedalam konstruktor Bapak Waktu Sisa : 0:59:57 1. Apa yang menjadi output potongan kode diatas? Error karena tidak ada String yang di-passing kedalam konstruktor Bapak Output: Bapak null Anak Error karena constructor Bapak(String

Lebih terperinci

Slide 6: Writing Classes

Slide 6: Writing Classes Slide 6: Writing Classes Bank Account Class 1. File Account.java berisi sebagian hal yang diperlukan untuk merepresentasikan sebuah bank account. Ketik dan simpan program tersebut serta pelajari methods

Lebih terperinci

1.Tujuan. 2. Latar Belakang

1.Tujuan. 2. Latar Belakang 1.Tujuan Menerangkan komponen-komponen delegation event model Mengerti bagaimana delegation event model bekerja Menciptakan aplikasi GUI yang berinteraksi dengan user Mendiskusikan manfaat dari class-class

Lebih terperinci

IKG2I4 / Software Project I

IKG2I4 / Software Project I IKG2I4 / Software Project I Mahmud Imrona, M.T. Izzatul Ummah, M.T. Kelompok Keahlian Algoritma dan Komputasi LECTURE NOTE WEEK 2 1 3/11/2015 WEEK 2 Class Driver Constructor Public vs private Get dan set

Lebih terperinci

PEMROGRAMAN BERORIENTASI OBJEK

PEMROGRAMAN BERORIENTASI OBJEK MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK NINF615 SEMESTER GASAL 2016/2017 PROGRAM STUDI S1 TEKNIK INFORMATIKA MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK DISUSUN OLEH: Tim Asisten Praktikum Jurusan

Lebih terperinci

IF PEMROGRAMAN LANJUT GRAPHICAL USER INTERFACE (GUI) 11 DENGAN SWING. Oleh : Andri Heryandi, M.T.

IF PEMROGRAMAN LANJUT GRAPHICAL USER INTERFACE (GUI) 11 DENGAN SWING. Oleh : Andri Heryandi, M.T. IF34348 - PEMROGRAMAN LANJUT GRAPHICAL USER INTERFACE (GUI) 11 DENGAN SWING Oleh : Andri Heryandi, M.T. MATERI HARI INI Swing Definisi swing Komponen Swing Layout Manager Oleh : Andri Heryandi, M.T. 2

Lebih terperinci

Materi 5 Pemrograman Visual

Materi 5 Pemrograman Visual Materi 5 Pemrograman Visual Pada materi ini akan dipelajari tentang pemberian aksi pada komponen swing (listener), terutama ActionListener. Sesi Materi ActionListener merupakan salah satu listener yang

Lebih terperinci

LAPORAN TUGAS AKHIR APLIKASI KALKULATOR BERBASIS JAVA

LAPORAN TUGAS AKHIR APLIKASI KALKULATOR BERBASIS JAVA LAPORAN TUGAS AKHIR APLIKASI KALKULATOR BERBASIS JAVA Diajukan untuk memenuhi salah satu tugas dari matakuliah Pemrograman III Oleh : Nama : Ai Titin Npm : 1142228 STMIK AMIK BANDUNG BANDUNG 2012 Latar

Lebih terperinci

MODUL PRAKTIKUM KE 3 A.

MODUL PRAKTIKUM KE 3 A. MODUL PRAKTIKUM KE 3 A. Target Praktikum - Mahasiswa mengetahui berbagai macam operator java dan penggunaannya - Mahasiswa mampu menyelesaikan permasalahan terkait penggunaan operator - Mengetahui build

Lebih terperinci

Anonymous Inner Class

Anonymous Inner Class 1 PERTEMUAN KE- 13 Anonymous Inner Class 1. Tujuan Membuat kelas di dalam kelas yang bersifat anonymous. 2. Teori Seperti pada pertemuan sebelumnya, bahasa pemrograman Java mengijinkan anda mendefinisikan

Lebih terperinci

ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM

ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM Materi kuliah ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM Ir. Roedi Goernida, MT. (roedig@yahoo.com) Program Studi Sistem Informasi Fakultas Rekayasa Industri Institut Teknologi Telkom Bandung

Lebih terperinci

Graphical User Interface (GUI)

Graphical User Interface (GUI) Praktikum 6 Graphical User Interface (GUI) Dosen : Ir. Nanang Syahroni M.Kom Pokok Bahasan Komponen dasar Swing JFrame, JLabel, JTextField dan JTextArea Menu bar dan Menu item Tujuan Belajar Memahami komponen

Lebih terperinci

Modul 9: antarmuka grafis (GUI) dalam window

Modul 9: antarmuka grafis (GUI) dalam window Modul 9: antarmuka grafis (GUI) dalam Setelah mengikuti mata kuliah ini mahasiswa dapat membuat program antarmuka grafis (GUI) sederhana dalam lingkungan 1 Pengantar : Dalam modul ini akan diuraikan beberapa

Lebih terperinci

Badiyanto, S.Kom., M.Kom. PBO java

Badiyanto, S.Kom., M.Kom. PBO java Badiyanto, S.Kom., M.Kom PBO java Apa yang Disebut Java? Bahasa pemrograman berorientasi objek murni yang dibuat berdasarkan kemampuankemampuan terbaik bahasa pemrograman objek sebelumnya (C++, Ada, Simula).

Lebih terperinci

User interface & XML Layout

User interface & XML Layout User interface & XML Layout Oleh : Farah Zakiyah Rahmanti, M.T Diperbarui 2017 Overview View Class UI Component XML Layout UI Hierarchy Layout Linear Layout Relative Layout Grid View List View View Class

Lebih terperinci

I. Tujuan Instruksional Umum Mengenal konsep dasar berorientasi objek Memahami dan dapat mengimplementasikan Kelas dan Objek pada java.

I. Tujuan Instruksional Umum Mengenal konsep dasar berorientasi objek Memahami dan dapat mengimplementasikan Kelas dan Objek pada java. I. Tujuan Instruksional Umum Mengenal konsep dasar berorientasi objek Memahami dan dapat mengimplementasikan Kelas dan Objek pada java II. Bahan Kajian 1. Kelas(Class) Kelas adalah definisi umum (pola,

Lebih terperinci

Inheritance (Pewarisan) Pengertian dasar inheritance

Inheritance (Pewarisan) Pengertian dasar inheritance Inheritance (Pewarisan) Pengertian dasar inheritance Inheritance (Pewarisan) merupakan salah satu dari tiga konsep dasar OOP. Konsep inheritance ini mengadopsi dunia riil dimana suatu entitas/obyek dapat

Lebih terperinci

KASUS INHERITANCE. (Window, Multithreading dan Applet)

KASUS INHERITANCE. (Window, Multithreading dan Applet) KASUS INHERITANCE (Window, Multithreading dan Applet) FRAME/WINDOWS FRAME Frame : merupakan komponen window paling atas yang memiliki judul dan border Frame merupakan salah satu komponen utama dalam GUI

Lebih terperinci

KONTRAK PEMBELAJARAN (KP) MATA KULIAH. Pemrograman Berorientasi Objek

KONTRAK PEMBELAJARAN (KP) MATA KULIAH. Pemrograman Berorientasi Objek KONTRAK PEMBELAJARAN (KP) MATA KULIAH Pemrograman Berorientasi Objek Kode MK: TSK 502 Program Studi Sistem Komputer Fakultas Teknik Universitas Diponegoro Pengajar : Dr.Oky Dwi Nurhayati, ST, MT Semester

Lebih terperinci

Pemrograman dengan Java

Pemrograman dengan Java Pemrograman dengan Java Java sebagai salah satu bahasa pemrograman baru menjanjikan banyak kemudahan bagi programer junior maupun senior. Tutorial ini akan membawa Anda mengenal lebih jauh bahasa ini melalui

Lebih terperinci

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN JAVA 2

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN JAVA 2 No. LST/EKA/PTI208/07 Revisi : 01 April 2009 Hal 1 dari 9 A. Kompetensi Setelah mengikuti praktikum ini, mahasiswa diharapkan mampu menggunakan class JButton dengan berbagai Event Handling. B. Dasar Teori

Lebih terperinci

1. Keyword mana yang memiliki fungsi sama dengan keyword this dan menyediakan reference ke atribut turunan dari objek? super

1. Keyword mana yang memiliki fungsi sama dengan keyword this dan menyediakan reference ke atribut turunan dari objek? super Your browser does not support inline frames or is currently configured not to display inline frames. Waktu Sisa : 1:58:53 1. Keyword mana yang memiliki fungsi sama dengan keyword this dan menyediakan reference

Lebih terperinci

PERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM

PERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM PERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM 1. Praktikan memahami perbedaan objek dan class pada Java. 2. Praktikan memahami konsep berorientasi objek. 3. Praktikan dapat membuat program sederhana dengan

Lebih terperinci

Fajar Yusran Zebua DASAR ANIMASI

Fajar Yusran Zebua DASAR ANIMASI Dasar Pembuatan Animasi Sederhana Dengan Java Fajar Yusran Zebua fajarzebua@yahoo.com Lisensi Dokumen: Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk

Lebih terperinci

BAB 1 PEMROGRAMAN BERORIENTASI OBJEK

BAB 1 PEMROGRAMAN BERORIENTASI OBJEK BAB 1 PEMROGRAMAN BERORIENTASI OBJEK Pemrograman berorientasi objek (Inggris: object-oriented programming disingkat OOP) merupakan paradigma pemrograman yang berorientasikan kepada objek. Semua data dan

Lebih terperinci

GUI, Ev e Ev n e t n Handling, Ex ception Handling in Java

GUI, Ev e Ev n e t n Handling, Ex ception Handling in Java GUI, Event Handling, Exception Handling in Java Nurochman Apa itu GUI? GUI > Graphical User Interface Tanpa GUI program kita kurang menarik Program GUI terdiri dari Container dan Component Container sebagai

Lebih terperinci

Program Penghitungan II Dengan Java

Program Penghitungan II Dengan Java P E M O G R M A N J A V A I I I 1 Program Penghitungan II Dengan Java Tugas ini disusun untuk memenuhi salah satu mata kuliah yang di berikan oleh Bapak Aan Dwianta Disusun oleh : Restina Rachmawati NPM:

Lebih terperinci

Pemrograman Java III

Pemrograman Java III Pemrograman Java III Model Perhitungan Aritmatika berbasis Java Tugas ini disusun untuk Memenuhi Salah Satu Syarat Penilaian Pada Mata Kuliah Pemrograman Java III Fakultas Teknik Informatika Semester Ganjil

Lebih terperinci

PEMAHAMAN DASAR DASAR JAVA

PEMAHAMAN DASAR DASAR JAVA MODUL 1 PEMAHAMAN DASAR DASAR JAVA A. PENGANTAR JAVA Java Standard Development Kit (JDK/SDK) merupakan alat-alat utama bagi programmer untuk membuat dan menjalankan java. Development Kit dapat didownload

Lebih terperinci

BAB 3 TYPE DATA, VARIABLE DAN OPERATOR

BAB 3 TYPE DATA, VARIABLE DAN OPERATOR BAB 3 TYPE DATA, VARIABLE DAN OPERATOR Bahasa pemrograman pada umumnya, mengenal adanya variabel yang digunakan untuk menyimpan nilai atau data. Sedangkan Java sendiri dikenal sebagai bahasa pemrograman

Lebih terperinci

MODUL 3. Inheritance, Abstract Class, Interface TUJUAN PRAKTIKUM LANDASAN TEORI. A. Inheritance

MODUL 3. Inheritance, Abstract Class, Interface TUJUAN PRAKTIKUM LANDASAN TEORI. A. Inheritance MODUL 3 Inheritance, Abstract Class, Interface TUJUAN PRAKTIKUM 1. Praktikan dapat memahai bagaimana suatu class dapat mewariskan sifat dari class yang sudah ada. 2. Praktikan mampu mendefinisikan superclass

Lebih terperinci

A. TUJUAN PEMBELAJARAN 1. Mengetahui cara menangani exception dengan cara melempar exception. 2. Mengetahui cara membuat sendiri class exception.

A. TUJUAN PEMBELAJARAN 1. Mengetahui cara menangani exception dengan cara melempar exception. 2. Mengetahui cara membuat sendiri class exception. PRAKTIKUM 18 MELEMPAR EXCEPTION DAN MEMBUAT EXCEPTION SENDIRI A. TUJUAN PEMBELAJARAN 1. Mengetahui cara menangani exception dengan cara melempar exception.. Mengetahui cara membuat sendiri class exception.

Lebih terperinci

Pemograman Swing. Netbeans:

Pemograman Swing. Netbeans: Pemograman Swing Topics: Cara Menggunakan Netbeans Java Application Java Desktop Application Materi Tambahan Netbeans: Pada pertemuan kali ini, kita akan membahas lebih jauh mengenai swing. Swing adalah

Lebih terperinci

Pemrograman Java III

Pemrograman Java III Pemrograman Java III Model Program Perhitungan Transaksi Penjualan Berbasis Java Tugas ini disusun untuk memenuhi salah satu syarat penilaian Mata Kuliah Pemrograman Java III Semester Ganjil Tahun Ajaran

Lebih terperinci

Pemrograman Fery Updi,M.Kom

Pemrograman Fery Updi,M.Kom Pemrograman Fery Updi,M.Kom 1 Pokok Bahasan Mendapatkan Input dari Keyboard Struktur Kontrol Pemilihan (If, if-else, if-else-else if, switch) 2 Tujuan Mahasiswa mampu: Membuat program Java yang interaktif

Lebih terperinci

APLIKASI KALKULATOR PENGHITUNGAN NILAI BERBASIS JAVA

APLIKASI KALKULATOR PENGHITUNGAN NILAI BERBASIS JAVA APLIKASI KALKULATOR PENGHITUNGAN NILAI BERBASIS JAVA Oleh: Nama : aryan sigit NPM : 1142216 STMIK AMIK BANDUNG 2012 BAB I PENDAHULUAN 1.1 Latar Belakang Perkembangan Teknologi Informasi di Indonesia saat

Lebih terperinci

KEAHLIAN PEMROGAMAN JAVA

KEAHLIAN PEMROGAMAN JAVA SILABUS KURIKULUM KEAHLIAN KOMPUTER KEAHLIAN PEMROGAMAN JAVA Bulan 1 : Dasar Pemrogaman Java Bulan 2 : Dasar Pemrogaman Java Bulan 3 : Java Swing J-Frame (GUI) Netbeans Bulan 4 : Java Swing J-Frame (GUI)

Lebih terperinci

SUMBER BELAJAR PENUNJANG PLPG

SUMBER BELAJAR PENUNJANG PLPG SUMBER BELAJAR PENUNJANG PLPG 2017 [TIK] BAB VIII PEMROGRAMAN BERORIENTASI OBJEK [Alfa Faridh Suni] KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN DIREKTORAT JENDERAL GURU DAN TENAGA KEPENDIDIKAN 2017 BAB VIII

Lebih terperinci