RANGKUMAN LAPORAN PRAKTIKUM PEMOGRAMAN BERORIENTASI OBJEK

RANGKUMAN


1 .ELEMEN DASAR JAVA 

1. Konsep Dasar Pemrograman Berorientasi Objek
Java adalah salah satu bahasa pemograman yang menggunakan paradigma pemograman berorientasi obyek. Pemograman berorientasi obyek menjadikan object dan class sebagai konsep utamanya. Jadi dalam pemograman java, object dan class menjadi suatu yang paling sentral. Java adalah salah satu bahasa pemograman yang tidak tergantung pada operating system (operating system independent), yang sekarang mulai populer dikalangan programmer.

2.      Konsep Dasar Variabel
Variabel adalah satuan yang dipakai oleh program sebagai basis untuk penyimpanan data. Penggunaan variable harus terlebih dahulu dideklarasikan nama dan tipenya. Tipe dasar (primitive) dalam java adalah sebagai berikut;

Tipe
Keterangan
Short
short integer, bilangan bulat 16 bit
Int
integer, bilangan bulat 32 bit
Long
long integer, bilangan bulat 64 bit
Byte
bilangan bulat 8 bit
Float
bilangan real (pecahan) 32 bit
double
bilangan real (pecahan) 64 bit
Char
karakter 16 bit
boolean
boolean value true atau false

3.      Konsep Dasar Array
Array adalah sekumpulan data yang sama tipenya. Isi array dapat diakses melaui index yang dimulai dari 0 sampai dengan jumlah_elemen_array-i.
Array Multidimesi
Kita dapat mendeklarasikan array lebih dari satu dimensi. Sebagai contoh kita akan membahas array dua dimensi. Untuk array berdimensi lebih dari dua dapat kita analogikan dengan array dimensi dua.
A.  Kerangka Program Java
Progam dalam java dibagi- bagi menjadi class-class. Oleh karena itu program dalam java dimulai dengan kata kunci class atau public class.
Progam selalu dimulai dengan pembuka blok yaitu kurung kurawal buka, dan diakhiri dengan penutup blok yaitu kurung kurawal tutup. Perlu juga diperhatikan bahwa class dalam java yang bersifat public harus disimpan dalam file sama dengan nama class dan ditambah ekstensi java dalam hal ini bersifat case sensitive. Jadi program di atas harus disimpan dalam file yang bemama Hello java.
Prasyarat sebuah program aplikasi (yang bisa dieksekusi) dalam java adalah mempunyai metoda (fungsi) sebagai entry point (pintu masuk) yang bemama main () untuk memulai eksekusi.
main () adalah sebuah metode dengan argument array dari String yang bemama argv. Klasifikasi dari metode main () adalah public static yang artinya bisa diakses oleh metoda diluar class tersebut. Sedangkan kata kunci void menjelaskan bahwa metoda main () tidak memberikan nilai balik (return value) ke pemanggil.
Perintah (statement) System.out.println(), merupakan perintah untuk mencetak string yang menjadi argument ke layar dan setelah pencetakan akan ganti baris. Perlu diperhatikan bahwa antara satu perintah yang lain dipisah dengan semi colon (;).
Program dalam java yang kita tulis harus kita compile dengan java compiler dengan perintah :
C:\>javac HelioJava
Javac adalah program java compiler, sedangkan Hello java adalah program yang akan di compile. Jika proses compile beijalan lancar maka akan dibuat file sesuai dengan nama file yang di compile ditambah dengan ekstensi class. Jadi proses compile di atas akan menghasilkan file class yang bemama Hello.class.File class yang dihasilkan dari proses kompilasi dapat kita eksekusi dengan java interpreter dengan perintah :
C:\>java Hello
Komentar
Pemberian komentar dalam proram adalah penting karena akan mempeijelas alur program serta akan memberikan dokumentasi yang jelas.
Pemberian komentar dalam java dapat dilakukan dengan memberikan karakter //. Semua teks setelah // akan dianggap komentar dan diabaikan dalam proses kompilasi sampai dengan garis baru (new line).
Kata Kunci
Program java mempunyai beberapa kata kunci yang tidak boleh kita gunakan sebagai nama variable, nama class dan yang lainnya. Kata kunci tersebut adalah :
Tabel 1.2 Tabel Kata Kunci
abstract
default
Goto
Operator
synchronized
boolean
do
If
Outer
this
Break
double
implements
Package
throw
Byte
else
Import
Private
throws
byvalue
extends
Inner
Protected
transient
Case
false
Instaceof
Public
true
Cast
final
Int
Rest
try
Catch
finally
Interface
Return
var
Char
float
Long
Short
void
Class
for
Native
Static
volatile
Const
future
New
Super
while
continue
generic
Null
switch


Contoh Program
1.    Program menggunakan type data Array dan Integer
public class Array1
{
            public static void main (String[] args)
            {
                        int[] i = new int[5];
                        i[0] = 200;
                        i[1] = 1234;
                        i[2] = 2347;
                        i[3] = 45;
                        i[4] = 9;
                       
                        System.out.println("Jumlah elemen i = " + i.length);
                        System.out.println(" i[0] = " + i[0]);
                        System.out.println(" i[1] = " + i[1]);
                        System.out.println(" i[2] = " + i[2]);
                        System.out.println(" i[3] = " + i[3]);
                        System.out.println(" i[4] = " + i[4]);
            }

}

2.     OPERATOR, CONTROL FLOW dan STRING

Operator dan Control Flow adalah jantung dari program Control Flow mempunyai kemampuan untuk mengendalikan jalan dari program. Tanpa Operator dan Control Flow, program tidak akan mampu melakukan ban yak hal. Ada beberapa jenis Operator dan Control Flow dal am Java, yaitu:
1.      Aritmatika Operator
Java mempunyai operator aritmatika seperti + (penjumlahan), - (pengurangan),* (perkalian), / (pembagian) dan % (modulo). Operator - operator ini berlaku seperti dalam operasi aritmatika. Dalam Java juga dimungkinkan untuk penyederhanaan penulisan operator seperti yang terlihat di bawah ini;
Int a, b, c, d, e,
a = 15;b =10; //=80;d=100;e=20;
a+ = 5;        //sama dengan a = a+5
b- =e;          //sama dengan b = b-e
c* =b; //sama dengan c = c*b
d/ =4; //sama dengan d = d/4
e%=3;         //sama dengan e = e % 3, hasilnya = 2
d++;            //sama dengan d = d+1 (increment)
c— ;            //sama dengan c = c-1 (decrement)
2.      Logika Operator
Ada tiga logika Operator dalam java yaitu:
&& Logika /nd
Logika Or
| Logika Not
Ketiga operator tersebut dioperasikan terhadap Boolean data tipe yang menghasilkan bolean data type juga (true atau false)
3.      Bit per bit operator
Variabel bertipe long, int, short, byte dan char dapat mempunyai operator yang dioperasikan langsung kesusunan binemya (bit atau bit).




Tabe 
2.1 Tabel bit per bit Operator
Operator
Nama
Keterangan
NOT
Mengubah 0 menjadi 1 dan 1 menjadi 0
&
AND
1 & 1 = 1 selain itu hasilnya selalu 0
1
OR
0|0 = 0 selain itu hasilnya selalu 1
A
XOR
0A0 = 0, 1A1 = 0 selain itu hasilnya 1
»
SHIFT RIGT
Dorong 1 bit ke kanan termasuk tanda minus
»>
SHIFT RIGT
Dorong 1 bit ke kana nisi bit paling kiri dengan 0
«
SHIFT LEFT
Dorong 1 bit ke kiri














4.      Relasional
Operator relasional digunakan untuk membandingkan dua nilai. Hasil dari perbandingan tersebut adalah data tipe Boolean (true atau false).

Tabel 2.2 Tabel operator Relasional
Operator
Keterangan

Lebih Besar
< 
Lebih kecil
>=
Lebih besar atau sama dengan
<=
Lebih kecil atau sama dengan
!=
Tidak sama dengan
==
Sama dengan

Tipe variable di java seperti short, int, long, float, double, Boolean, dan character dapat dibandingkan satu dengan yang lainnya.

5.      Prioritas
Setiap operator mempunyai prioritas sendiri - sendiri, sehingga perhitungan matematika dilakukan sesuai prioritasnya. Lihat contoh dibawaj ini:
C = a + b*d;
Akan dijalankan sesuai prioritas yaitu *+,=
Dibawah ini diberikan table prioritas dari operator, urutan prioritas dari atas ke bawah Operator yang sama prioritasnya akan dioperasikan dari kanan ke kiri.

6.     Pernyataan if
Pernyataan if adalah control flow yang paling sederhana Pernyataan ini mengevaluasi suatu ekspresi. Jika ekspresi benar (true) maka blok pernyataan akan dijalankan. Sebaliknya computer akan melompati blok pernyataan tersebut. Sintaks dari pernyataan if
If (ekspresi)
Pernyataan;
7.      Pernyataan if-else
Pernyataan if-else mengevaluasi suatu ekspresi. Jika ekspresi benar (true) maka blok pernyataan dijalankan. Sebaliknya computer akan menjalankan blok pernyataan yang lain. Sintaks dari penyataan if-else:
If(ekspresi)
Pemyataanl;
Else
Pemyataan_2;
8.      Pernyataan switch, case dan break
Switch digunakan untuk percabangan (seleksi) lebih dari dua. Ini digunakan untuk menghindari pergunaan if-else yang berlapis-lapis.
9.      Pengulangan (Loop)
Pengulangan dengan while
Alur program blok while akan dilakukan berulang-berulang selama ekspresi benar (true)
Sintaks dari pengulangan while adalah sbb:
While (ekspresi)
Pernyataan;

Pengulangan dengan do-while
Pengulangan dengan while pemeriksaan ekspresi dilakukan sebelum pengulangan. Ada kalanya pengulangan pemeriksaan ekspresi dilakukan setelah pengulangan. Jadi minimal satu kali pengulangan dilakukan. Pengulangan ini menggunakan do-while, sintaksnya.
do
pernyataan;
while (ekspresi);
Pengulangan dengan for
Pengulangan dengan for menyerupai while, namun dilengkapi dengan inialisasi, test kondisi dan update counter.
Break, continue
Dal am pengulangan break digunakan untuk mematahkan (mengakhiri) pengulangan secara paksa. Sedangkan continue digunakan untuk melanjutkan pengulangan berikutnya secara paksa dengan mengabaikan perintah dibawah pemyataan continue.
String
String adalah obyek yang terdiri atas deretan karakter. Tidak seperti array dari karakter, String tidak perlu ditentukan jumlah panjang karaktemya
StringTokenizer
Class StringTokanizer berfungsi untuk membagi string berdasarkan token tertentu. Class ini sangat membantu untuk menginterprestasikan suatu string ke suatu maksud tertentu. Contoh yang paling populer adalah membagi kalimat menjadi beberapa kata. Kita juga membaca data dari file kemudian data tersebut kita uraikan berdasarkan token tertentu.

Contoh Program
1.    Menggunakan pernyataan if
public class TestIf {
            public static void main (String argv [] ) {
                        int x = -3 ;
                        if ( x < 0 )
                        System.out.println("Negatif");
            }

}


 3.      CLASS

  Class merupakan bagian pokok dari Pemrograman Berorientasi Obyek (Object Oriented Programming). Class merupakan cara merakit data-data dan menentukan semua metode yang diperlukan untuk mengakses, menggunakan dan mengubah data-data tersebut. Dalam java class juga bisa dianggap sebagai type dari object.
Setiap class memiliki dua hal utama. Yang pertama adalah yang kita sebut state/atribut/property. State dalam obyek tidak lain adalah nilai dari setiap variable. Bagian yang kedua adalah tool atau method yang menentukan utility yang dimiliki oleh class.
1.      Pendeklarasian class
Sintaks pendeklarasian class dalam java adalah
modifiers class NamaClass {
<class attribute list>
<class method list>
}
modifier menentukan bagaimana class dapat ditangani pada fase development berikutnya. Ada tiga jenis modifier dalam class yaitu public, final, abstract dan friendly.
·        Public
Dengan menempatkan public didepan pendeklarasian class, mempunyai arti bahwa class didefinisikan untuk public. Ini berarti class tersebut dapat dipakai atau dikembangkan (extend) oleh sembarang object.
·        Final
Dengan menempatkan final didepan pendeklarasian class menandakan bahwa class tersebut tidak bisa memiliki subclass (turunan). Dengan kata lain class tersebut tidak bisa dikembangkan.
·        Abstract
Dengan menempatkan class didepan pendeklarasian class, menandakan bahwa kita tidak bisa menciptakan obyek dari class tersebut. Class tersebut harus dipakai sebagai super class dari class lain. Dalam abstract class paling tidak ada satu method yang belum komplit.
·        Friendly
Secara default modifiers class adalah friendly ,artinya class tersebut tersebut boleh dikembangkan atau dipakei oleh class lain dalam satu paket (package) . jika kita tidak memberikan modifiers didepan pendefinisian class maka class bersifat friendly.
2.      Konstruktur
Konstruktur adalah method dengan property yang unik dan untuk keperluan inialisasi pada saat obyek diciptakan. Jadi konstruktur digunakan memberikan niali kepada attribute tertentu pada saat obyek diciptakan.Kontruktor didefinisikan dengan nama yang sama dengan nama class. Konstruktor tidak perlu retum type sebab konstruktur secara aktual dipanggil sebagai method. Konstruktur ini dipanggil pada saat kita memberikan perintah new.
3.      Inherintance (Pewarisan)
Inheritance (Pewarisan) adalah suatu mekanisme yang memungkinkan satu class mewarisi (memiliki) attribute dan method dari class lain. Mekanisme pewarisan ini diperlukan untuk mengembangkan class-class yang sudah ada tanpa harus membuka source code dari class­class tersebut.
4.     Kata Kunci this
this adalah referensi yang menunjuk pada obyek aktual. Nilai this ini menunjukkan bahwa obyek yang dimaksud adalah obyek yang sedang aktif itu sendiri. Contoh penggunaan dari this adalah sbb:
5.     Overriding Method
Overriding method adalah suatu mekanisme pewarisan class di mana subclass mendefinisikan ulang satu atau lebih method (fungsi) yang ada di supper class. Dalam overriding ini subclass bisa mendefinisikan method (fungsi) yang di-override dengan fungsi yang baru sama sekali, atau menambahi method (fungsi) yang di-override yang sudah ada dengan fungsinal-fungsinal yang lain. Contoh class yang menggunakan mekanisme overriding 

Contoh Program
1.    Mendefinisikan Class
public class Kotak {
            private int Panjang, Lebar, Tinggi;
            public void setPanjang(int  pjg) {
                        Panjang=pjg; }
            public void setLebar(int  lbr) {
                        Lebar=lbr; }
            public void setTinggi(int  tg) {
                        Tinggi=tg; }
            public int getPanjang() {
                        return Panjang; }
            public int getLebar() {
                        return Lebar; }
            public int getTinggi() {
                        return Tinggi; }
            public int luas () {
                        int hasil;
            hasil=2*Panjang*Lebar+2*Panjang*Tinggi+2*Lebar*Tinggi;
                        return hasil; }
            public int volume () {
                        int hasil;
                        hasil=Panjang*Lebar*Tinggi;
                        return hasil;
            }

}    

      

public class TestKotak {
            public static void main (String argv []) {
            Kotak k1;
            int vol,luas,pjg;
            k1=new Kotak () ;
            k1.setPanjang (10) ;
            k1.setLebar (15) ;
            k1.setTinggi (4) ;
           
            vol=k1.volume() ;
            luas=k1.luas() ;
            pjg=k1.getPanjang ();
                        System.out.println("Kotak k1 luas="+luas+" volume="+vol+"Panjang="+pjg);
            }
}

 4. THREADS

   Property unik dari java adalah bahwa Java memberi suport adanya threads. Threads memperbolehkan kita melakukan banyak hal pada waktu yang bersamaan. Threads adalah komponen java yang memungkinkan kita untuk membuat program yang bersifat multitasking programming. Sebenamya setiap program dalam java selalu menggunakan paling tidak satu thread
Kita bias membuat aplikasi dan class beijalan dalam threads yang terpisah dengan dua cara, yaitu :
·         Mengembangkan dari class Thread (extending class Thread)
·         Mengimplementasikan Runnable interface
Mengembangkan class Thread
Dengan menggunakan extends Thread, mekanisme Thread dapat diaplikasikan dengan membuat fungsi run ()
Untuk melihat concurrency (multitasking) pada program tersebut tambahkan method sleep( )untuk actual Thread (current Thread). Method sleep( ) hanya dapat dilakukan dengan menangkap sinyal
Method yang berhubungan dengan Thread
start()
Mengaktifkan Thread Obyek Thread kemudian akan menjalankan method run(). stop()
Menghentikan Thread yang sedang aktif.
sleep( int delta)
Menunda aktifitas Thread untuk delta millisecon
Contoh selanjutnya adalah mendemonstrasikan animasi yang dilakukan dengan menjalankan Thread. Tugas Thread adalah melakukan repaint( ) pada obyek. Setelah repaint( ) dilakukan, Thread beristirahat untuk beberapa detik dan untuk kemudian melakukan repaint() kembali. Obyek Thread kemudian akan menjalankan method run().
Kemudian class TThread digunakan oleh class yang merupakan pengembangan (extend) dari class Applet. Class Applet digunakan untuk class-class yang digunakan dalam aplikasi applet (untuk ditampilkan dalam html file)
Setelah kita compile kedua class tersebut, yaitu class TThread dan class Animasi, kita dapat membungkusnya ke dalam file html. Selanjutnya kita dapat mengeksplore file tersebut dengan internet browser.
Mengimplementasikan Runnable interface
Pada contoh di atas Thread digunakan dengan mengembangkan class Thread, yang mana berarti bahwa Subclass Thread hanya dapat mewarisi sifat-sifat dari Thread. Pengikatan Class ini dapat dihindari dengan menggunakan konsep interface. Dengan mengimplementasikan Runnable interface. Interface Runnable ini hanya berisi satu method yang harus diimplementasikan, yaitu run().
Konstruktor Thread adalah :
Thread(Runnable Threadobject)
Atau
Thread(Runnable Threadobject, String nama Thread)
Threadobject pada contoh di atas adalah this, yang merupakan Obyek itu sendiri yang mengimplementasikan Runnable.
Method is Activef ) akan memberikan nilai true jika Thread actual aktif, dan false jika tidak aktif.

Contoh Program
1.    Mengaplikasikan mekanisme Thread dengan menggunakan fungsi run()
public class SimpleThread extends Thread {
            public SimpleThread (String nama) {
                        super (nama);
            }
            public void run() {
                        for (int i=0; i<10; i++){
                                    System.out.println(i+""+getName());
                        }
            System.out.println("SELESAI "+getName());
            }

}


public class TwoThreadTest {
            public static void main (String argv [] ) {
           
            SimpleThread t1, t2;
            t1 = new SimpleThread ("Surabaya");
            t2 = new SimpleThread ("Jakarta");
            t1.start ();
            t2.start ();
            }


5.      EXCEPTION (EKSEPSI)

Eksepsi adalah mekanisme yang memungkinkan program untuk menangkap kondisi- kondisi tertentu yang membutuhkan penanganan khusus. Eksepsi dapat berupa kesalahan yang teijadi dalam program pada saat run time. Format eksepsi adalah :
Try {
// blok program
} catch (EksepsiTipel e) {
// blok program untuk EksepsiTipel
} catch (EksepsiTipe2 e) {
// blok program untuk EksepsiTipe2
} catch (EksepsiTipe3 e) {
// blok program untuk EksepsiTipe3
} finally {
// blok program
.......................................... }
Try menyatakan bahwa dalam blok try dapat teijadi suatu ekspresi dan bila ekspresi teijadi, maka aktifkan program yang berada dalam kelompok (blok) catch sesuai dengan tipe ekspresinya.
Object e dari tipe ekspresi dapat digunakan sebagai referensi penanganan eksepsi aktual. finally menyatakan bahwa apapun jenis tipe ekspresinya, maka program dalam blok ini harus tetap dijalankan.
Dengan menangkap eksepsi program tidak langsung berhenti dan melaporkan kesalahan tersebut, melainkan membelokkan dengan program pengaman tertentu.
Pada saat run time, jika java menemukan kesalahan dan melempar pesan ke program. Dengan pesan ini, program akan melakukan suatu aksi tertentu. Mekanisme melempar ini disebut juga sebagai throw, alur program akan dihentikan, kemudian program pengendali (exception handling) akan diaktifkan.
Throw Throw digunakan secara eksplisit untuk membuang sebuah eksepsi. Contoh berikutnya, TestThrow mendefinisikan Obyek Eksepsi “NullPointerException” pada sebuah variabel t. Dengan instruksi throw, program Eksepsi untuk kemudian ditangkap oleh instruksi catch. Namun tentunya yang ditangkap harus sesuai degan tipe eksepsi yang dilemparkan. Dalam hal ini program throwsEksepsi selalu ditangkap dengan catch pada blok dimana eksepsi tersebut dilempar. Tanpa catch, program tidak akan dikompilasi. Program dibawah ini menghilangkan try dan catch pada subroutine demo(      ) , namun dengan menggunakan tambahankata kunci throws Exception.

Contoh Program :
1.    Menggunakan Throws
public class ThrowDemo {
            static void demo()throws IllegalAccessException{
                        System.out.println("xxxxxx");
                        throw new IllegalAccessException ("ThrowDemo");
            }
            public static void main (String argv[]) {
                        try{
                                    demo();
                        System.out.println("Selesai");
                                    }catch (IllegalAccessException e){
                        System.out.println("Saya tangkap " + e);
                        }
            }

}

6.      JAVA GRAPHICAL USER INTERFACE

Graphical User Interface
      Graphical User Interface merupakan antar muka grafis yang memfasilitasi interaksi antara pengguna dengan program aplikasi. Salah satu komponen dalam bahasa pemrograman Java untuk membangun GUI adalah Swing. Komponen ini didefinisikan di dalam paket javax.swing. Swing diturunkan dari Abstract Windowing Toolkit dalam paket java.awt. Hirarki dari komponen Swing adalah :
java.swing.Jcomponent java.awt.Container java.awt.Component Java.Lang. Object
JComponent adalah superclass dari semua komponen Swing. Sebagian besar fungsionalitas komponen diturunkan dari superclass ini. Beberapa komponen utama dalam GUI adalah:
1.     Containers: merupakan wadah yang berfungsi untuk menempatkan komponen- komponen lain di dalamnya.
2.     Canvas.: merupakan komponen GUI yang berfungsi untuk menampilkan gambar atau untuk membuat program grafis. Dengan canvas, kita bisa menggambar berbagai bentuk seperti lingkaran, segitiga, dll.
3.     User Interface (UI) components: contohnya adalah buttons, list, simple popup menus, check boxes, text fields, dan elemen lain
4.     Komponen pembentuk window: seperti frames, menu bars, windows, dan dialog boxes.
Komponen-komponen Dasar User Interface dengan Swing
Berikut adalah beberapa komponen dasar antarmuka pengguna (user interface) yang disediakan oleh Swing:
1.     Top level containers', adalah container dasar untuk meletakkan komponen-komponen lain. Contohnya adalah JFrame, JDialog, dll.
2.     Intermediate level containers: menipakan container perantara. Umumnya digunakan hanya untuk meletakkan atau mengelompokkan komponen-komponen yang digunakan, baik itu container atau berupa atomic component. Contoh dari Intermediate level container adalah JPanel (panel).
3.     Atomic component: merupakan komponen yang memiliki fungsi khusus. Umumnya pengguna langsusng berinteraksi dengan komponen ini. Contohnya adalah J Button (tombol), JLabel (label), JTextField, JTextArea (area untuk menulis teks), dll.
4.     Layout Manager Berfungsi untuk mengatur bagaiman tata letak/posisi dari komponen yang akan diletakkan, satu sama lain di dalam suatu container. Secara default ada 6 buah layout : BorderLayout, BoxLayout, FlowLayout, CardLayout, GridBagLayout & GridLayout
5.     Event Handling:Menangani event yang dilakukan oleh user seperti menekan tombol, memperbesar atau memperkecil ukuran frame, mengklik mouse, mengetik sesuatu dengan keyboard, dll.
Konstruktor untuk membentuk JFrame adalah JFrame() atau JFrame(String NamaFrame).
Salah satu method yang sering digunakan di kelas JFrame adalah setDefaultCloseOperation(int ops). Method ini berftmgsi untuk mengatur apa yang akan dilakukan oleh program ketika tombil close di klik. Parameter method tersebut di antaranya adalah:

1.     JFrame.DO NOTHING ON CLOSE: tidak ada satu aktivitas pun yang dilakukan secara otomatis apabila frame ditutup.
2.     JFrame.HIDE ON CLOSE: frame hanya disembunyikan, namun secara fisik frame masih ada di memori sehingga dapat dimunculkan kembali. Merupakan aktivitas default.
3.             JFrame.DISPOSEONCLOSE: mengilangkan tampilan frame dari layar, menghilangkannya dari memori, dan membebaskan resource yang dipakai.
4.     JFrame.EXIT ON CLOSE: menghentikan eksekusi program.
Top level container yang lain adalah JDialog. Berbeda dengan JFrame, JDialog tidak dibuat berdiri sendiri, melainkan dibuat bersama-sama dengan frame sebagai parent-nya. Jika frame parent-nya ditutup, maka dialog akan dihapus dari memori. Kemunculan dialog akan membuat semua input terhadap frame parent-nya akan terblokir sampai dialog tersebut ditutup.
Layout Management
Untuk mengatur layout dari setiap komponen-komponen GUI yang diletakkan pada container, digunakan layout /manager.Setiap pane secara default pasti memiliki layout manager. Jika ingin mengubah layout-nya, gunakan void setLayout(LayoutManager mgr) Java menyediakan 6 buah class standar yang dapat digunakan sebagai layout manager yang terdapat dal am package java.awt, yaitu FlowLayout , GridLayout , BorderLayout , CardLayout ,GridBagLayout, Box Layout
1.     Flow Layout merupakan layout manager default yang digunakan JPanel. Layout manager ini meletakkan kompenen yg ada secara berurutan dari kiri ke kanan dan berpindah baris jika dibutuhkan. Jarak antar komponen baik secara vertikal maupun horizontal dapat ditentukan sendiri. Selain itu, kita bisa menentukan alignment dari komponen yang diletakkan, yaitu rata kanan, rata kiri atau di tengah
2.     GridLayout merupakan layout manager berbentuk grid. Semua komponen dalam layout ini memiliki ukuran yang sama. Konstruktor GridLayout adalah sebagai berikut.
a.    GridLayout(rows, columns, hGap, vGap). Konstruktor ini mendefinisikan jumlah baris, kolom, dan ukuran gap horisontal/vertikal antar elemen dalam pixel.
b.    GridLayout(rows, columns). Konstruktor yang digunakan dengan nilai default hGap dan vGap sama dengan 0.
3.     BorderLayout adalah default manager untuk ContentPane. Layout ini menempatkan komponen dengan pendekatan arah mata angin north, south, west, center, east.
4.     Cardlayout digunakan untuk menampilkan container-container/pane\-pane\ seperti tumpukan kartu. Hanya satu container yang akan tampil untuk satu waktu. komponen yang diletakkan dengan layout ini berupa object yang bertipe intermediate container yang di dalamnya terdapat atomic component. Salah satu contoh intermediate container adalah tabbed pane (JTabbedPane)
5.     GridBaglayout
Grid bag layout adalah pengaturan layout yang dapat digunakan untuk meletakkan komponen secara bebas. Setiap komponen dapat menempati ukuran yang berbeda dengan komnponen lainnya.
6.     Boxlayout digunakan untuk meletakkan komponen berurutan ke kanan (sumbu X) atau berurutan ke bawah (sumbu Y).Penggunaan BoxLayout menggunkan class Box dimana merupakan container yang secara internal telah menggunakan BoxLayout sebagai layout manager-nya.

Contoh Program :
1.    Membuat Frame
import javax.swing.*;
            public class ContohFrame1 {
            public static void main (String [] args) {
                        JFrame a1;
                        a1 = new JFrame("contoh frame");
                        a1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                        a1.setSize(300,300);
                        a1.setVisible(true);
            }

}







Komentar

Postingan populer dari blog ini

RANGKUMAN LAPORAN PRAKTIKUM JARINGAN KOMPUTER

RANGKUMAN PRAKTIKUM BASISDATA

RANGKUMAN LAPORAN PRAKTIKUM SISTEM OPERASI