RANGKUMAN PBO ICHSAN 3B3
BIODATA MAHASISWA
NAMA: MUHAMMAD NURUL ICHSAN
NIM: 181080200241
KELAS:3B3
KELOMPOK:19
BAB I
BIODATA MAHASISWA
NAMA: MUHAMMAD NURUL ICHSAN
NIM: 181080200241
KELAS:3B3
KELOMPOK:19
BAB I
A.
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
sentralnya. Jadi dalam pemograman java object dan class menjadi suatu yang
paling utama. Java adalah salah satu bahasa pemograman yang tidak tergantung
pada operating system (operating system independent), yang sekarang mulai
popular dikalangan programmer.
B.
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 :
Tabel 1.1 Tabel Tipe
Variabel
|
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
|
Short
Tipe variable short adalah
bilangan bulat 16 bit yang mempunyai jangkauan nilai dari -215 sampai dengan
215-1 atau dari -32768 sampai dengan ±32767.
Long
Tipe variable long adalah
bilangan bulat 64 bit dengan jangkauan nilai dari -263sampai dengan
263-1.
Byte
Type variable byte
adalahbilanganbulat 8 bit yang mempunyai jangkauan nilai dari 27sampai
dengan 27-1 ataudari -128 sampai dengan +127.
Float
Float adalah bilangan real
(pecahan, dengan format floating point yang menggunakan tempat penyimpanan 32
bit.Tipe float mempunyai jangkaun nilai dari 3.4e-038 sampai dengan 3.4e+038.
Ketelitian float sampai 10 angka dibelakang koma.
Contoh : Float
f1 ;
Float f2 = 0.13f;
Float f3 = 0.34f;
Perhatikan bahwa angka
float ditambah suffix huruf f yang berarti float. Hal ini diperlukan karena
notasi default untuk tipe variable double.
Double
Dobel adalah bilangan real
(pecahan) dengan presisi 2 kali lebih baik dari variable float. Dobel
membutuhkan 64 bit untuk penyimpanannya yang mempunyai jangkauan nilai dari
1.7e-308 sampai dengan 1.7e+308.
Char
Tipe variable char
menyimpan kode Unicode (karakter internasional), karena itu membutuhkan 16 bit
Contoh:
Char
c;
Char c1=’c’;
Char c5=’\t’;
Boolean
Variable Boolean berisi dua
nilai, yaitu true dan false.Variabel Boolean dapat diperoleh dari operasi
logika seperti perbandingan dua bilangan, perbandingan dua string, dan lain –
lain;
Casting
Casting adalah teknik
konversi suatu data tipe ke data tipe yang lain secara eksplisit. Yang
menerangkan kepada compiler bahwa terjadi perubahan tipe variable, sehingga
hasilnya harus dikonversi ke tipe variable tersebut.
Contoh :
Int I;
Double d;
Byte
b;
I =
250;
D =
I; // tidak terjadi kesalahan, penyesuain otomatis
B = I; // terjadi
kesalahan, tipe tidak compatible
B =
(byte); //tidak terjadi kesalahan, casting dari integer ke byte
C.
Konsep Dasar Array
Array adalah sekumpulan
data yang sama tipenya. Isi array dapat diakses melalui index yang dimulai dari
0 sampai dengan jumlah_elemen_array-i.Tipe_variabel nama_array[];
Contoh
IntMyArr[];
Pada saat didefinisikan
(dideklarasikan), jumlah elemen array belum diketahui. Jumlah elemen yang
sesungguhnya diciptakan dengan 2. Array MyArr dapat diakses dengan cara sbb;
MyArr[0] = 340;
MyArr[1] = -129;
MyArr[2] = 499;
Array dapat diinialisasi
secara otomatis pada saat pendeklarasian dengan cara sbb:
IntMyArr[] = {340,-129,
499};
Pada saat runtime jika
indeks array yang diakses melebihi jumlah elemen yang ada maka java akan
mengeluarkan pesan kesalahan berupa kesalahan runtime error.
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.Contoh pendeklarasian array dua dimensi:
Double
Matrik[ ] [ ];
Menciptakan element array duadimensi
Matrik
= new double [2] [3];
Atau dengan cara diciptakan satu persatu (per
baris)
Matrik=new
double [2] [ ]; // dimensi berikutnya belum disiapkan
Matrik[0]
= new double[3];
Matrik[1] = new double[3];
Matrik[0]
[0] = 9.5;
Matrik[0]
[2] = 10.0;
Matrik[1]
[2] = 340.9;
Atau kita dapat
menginisialisasi array multi demensi pada saat pendeklarasian dengan cara :
Double
Matrik [ ] [ ] ={
{20.5, 10.9, 309.0}
{-8.8, 98.7, 100.0}
BAB II
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
|| LogikaOr
|
LogikaNot
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 binernya (bit atau bit).
Tabel 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
|
|
|
|
OR
|
0|0 = 0 selain itu hasilnya selalu 1
|
|
^
|
XOR
|
0^0 = 0, 1^1 = 0 selain itu hasilnya 1
|
|
>>
|
SHIFT RIGT
|
Dorong 1 bit kekanan termasuk tanda minus
|
|
>>>
|
SHIFT RIGT
|
Dorong 1 bit ke kanan isi bit paling kiri
dengan 0
|
|
<<
|
SHIFT LEFT
|
Dorong 1 bit kekiri
|
Seperti halnya aritmatika
operator, Bit per bit operator juga bias dilakukan Penyederhanaan penulisannya.
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 keci latau 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 .
Contoh :
Char c = ‘*’;
Inti = 0x2a;
Boolean b;
b = c = = i;
5.
Prioritas
Setiap operator mempunyai
prioritas sendiri – sendiri, sehingga perhitungan matematika dilakukan sesuai
prioritasnya .Lihat contoh dibawah 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.
Tabel 2.3 Tabel Operator
Prioritas
|
Operator
|
|
( ) [ ]
|
|
++ -- ~!
|
|
*/ %
|
|
+ -
|
|
>>>>><<
|
|
>>= <<=
|
|
== ! =
|
|
&
|
|
^
|
|
|
|
|
&&
|
|
||
|
|
?:
|
|
=
|
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 )
Pernyataan_1;
Else
Pernyataan_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. Jadi sintaks pengulangan dengan for adalah :
for (inialisasi_counter ; test_kondisi ;
update_counter) {
instruksi;
--------
};
Inialisasi_counter
dilakukan sekali pada saat akan dilakukan pengulangan, test_kondisi diperiksa
setiap kali sebelum pengulangan dilakukan, sedangkan update_counter dilakukan
setiap kali selesai pengulangan.
Break, continue
Dalam pengulangan break
digunakan untuk mematahkan (mengakhiri) pengulangan secara paksa. Sedangkan
continue digunakan untuk melanjutkan pengulangan berikutnya secara paksa dengan
mengabaikan perintah dibawah pernyataan continue.
String
String adalah obyek yang
terdiri atas deretan karakter. Tidak seperti array dari karakter, String tidak
perlu ditentukan jumlah panjang karakternya. String dapat langsung di
inialisasi tanpa kata kunci new, contoh :
String str = “ Hello “ ;
Str = str + “ Java Programmer” ;
String dapat juga
diciptakan melalui cara berikut :
char c_arr [ ] = { ‘h’, ‘e’, ‘1’, ‘0’ };
String s1 = new String (c_arr) ;
String s2 = new String (c_arr, 2, 2);
// offset ke 2 sebanyak 2 karakter
Ada beberapa method dalam
String yang perlu kita ketahui antara lain:
Int length ( )
memberikan nilai balik (return value) panjang
dari aktual string.
char charAt (int index)
memberikan nilai balik
berupa karakter pada posisi index dalam aktual string.
BAB III
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.
<class attribute list>adalah
daftar semua atribute (variable )dari class ,sedangkan <class method list>adalah
daftar semua method (fungsi\operasi)yang bisa dilakukan oleh class tersebut.
Sintaks pendefinsian class attribute :
modifiers data_type nama
attribute ;
Sintaks penderfinsian class method :
modifers return_type nama
method (<parameters list>)
Akses modifiers dalam class
attriubute maupun class method menentukan bagaimana aksesbilitas attribute dan
method dari class lain. Ada beberapa akes modifier yaitu:
· Friendly
Secara default akses
modifiers adalah friendly , yang berarti bahwa attribute |mothode bisa
diakses oleh class lain dalam satu paket (package ).
· Public
Akses modifiers public
membuat attribute\metbute tersebut dapat diakses oleh pihak luar manapun.
· Private
Akses modifiers private
membuat attribute\method hanya dapat diakses oleh class itu sendiri .
·
Protected
Akses modifiers protected
membuat attribute\method hanya dapat diakses oleh class itu sendiri dan class
turunanya (subclass nya ).
· Final
akses modifiers final
membuat attribute tersebut tidak boleh diubah pada saat eksekusi . sebab
attribute ini tidak boleh diubah maka harus diberi nilai pada saat
pedeklarasian misal final int SIZE 5;
Static
Akses modifiers static mebuat
attribute tersebut mempunyai nilai sama untuk semua obyek dari class tersebut.
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 return_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. Class yang mewarisi disebut subclass
sedangkan calss yang diwarisi disebut super class. Pewarisan class dalam java
menggunakan sintaks:
modifier<NamaSubClass>extends<NamaSuperCalss>
{
}
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 :
BAB IV
1.
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 interrupt dengan mekanisme try & cacth.
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 millisecond.
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 animasi di bawah ini. Class animasi
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.
2.
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 Active( ) akan memberikan nilai true jika Thread actual aktif, dan
false jika tidak aktif.
BAB V
Eksepsi
adalah mekanisme yang memungkinkan program untuk menangkap kondisi-kondisi
tertentu yang membutuhkan penanganan khusus. Eksepsi dapat berupa kesalahan
yang terjadi dalam program pada saat run time. Format eksepsi adalah :
Try {
// blok program
. . . . . .
}
catch (EksepsiTipe1 e) {
// blok program untuk EksepsiTipe1
. . . . . .
}
catch (EksepsiTipe2 e) {
// blok program untuk EksepsiTipe2
. . . . . .
}
catch (EksepsiTipe3 e) {
// blok program untuk EksepsiTipe3
. . . . . .
}
finally {
// blok program
. . . . . .
}
try menyatakan
bahwa dalam blok try dapat terjadi suatu ekspresi dan bila ekspresi terjadi,
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 main menangkap sinyal tersebut dan instruksi program diteruskan pada
blok program disitu.
throws
Eksepsi
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 tambahan kata kunci throws Exception.
Tabel 6.1 Common Jaxa
Exceptions
|
Exceptions
|
Description
|
|
Arithmeticexception
|
Disebabkan oleh error secara matematika seperti
pembagian dengan nol
|
|
ArrayIndexOutOfBouns Exception
|
Disebabkan oleh array index yang salah
|
|
ArrayStoreException
|
Disebabkan ketika program mencoba menyimpan file data
yang salah
|
|
FileNotFoundException
|
Disebabkan oleh usaha mengakses file yang tidak ada
|
|
IOException
|
Disebabkan oleh general I/O failures, seperti kegagalan
membaca file
|
|
NullPointException
|
Disebabkan oleh mereferensi obyek null
|
|
NumberFormatException
|
Disebabkan ketika konversi antara string dan bilangan
gagal
|
|
OutOfMemoryException
|
Disebabkan ketika tidak cukup memory untuk alokasi
obyek
|
|
SecurityException
|
Disebabkan ketika sebuah applet mencoba melakukan aksi
yang tidak diperbolehkan oleh setting security browser
|
|
StackOverflowException
|
Disebabkan ketika sistem run melebihi kapasitas stack
|
|
StringIndexOutOfBoundsException
|
Disebabkan ketika program mencoba mengakses posisi
karakter yang tidak ada di dalam string
|
BAB VI
1. 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.
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 didalamnya.
2.
Canvas : merupakan komponen GUI yang berfungsi
untuk menampilkan gambar atau untuk membuat progarm 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 : merupakan kontainer perantara. Umumnya
digunakan hanya untuk meletakkan atau mengelompokkan komponen-komponen yang
digunakan, baik itu containeratau berupa atomic component. Contoh dari Intermediate
level container adalah Jpanel (panel).
3. Atomic component : merupakan komponen yang
memiliki fungsi khusus. Umumnya pengguna langsung berinteraksi dengan komponen
ini. Contohnya JButton (tombol),JLabel (label),JtextField,JtextArea (area untuk
menulis teks),dll
4. Layout Manager Berfungsi untuk
mengatur bagaimana tata letak/posisi dari komponen yang akan diletakkan, satu
sama lain didalam suatu container. Secara default ada 6 buah layout :
BorderLayout,BoxLayout,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 Nama Frame). Salah
satu method yang sering digunakan dikelas JFrame adalah
setDefaultCloseOperation (int ops).
Method ini berfungsi
untuk mengatur apa yang akan dikakukan oleh program ketika tombol close di
klik. Parameter method tersebut diantaranya 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 di sembunyikan, namun secara fisik frame masih ada dimemori
sehingga dapat dimunculkan kembali. Merupakan aktivitas default.
3. JFrame.DISPOSE_ON_CLOSE :
menghilangkan 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(LayoutManeger mgr) java menyediakan 6 buah class standar yang dapat
digunakan sebagai layout manager yang terdapat dalam package java.awt,
yaitu FlowLayout, GridLayout, BorderLayout, CardLayout, GridBagLayout, BoxLayout.
1.
Flow Layout merupakan layout manager default yang
digunakan JPanel. Layout manager ini meletakkan komponen yang ada secara
berurutan dari kiri ke kanan dan berpindah baris jika dbutuhkan. 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
sebagai berikut :
·
GridLayout(rows,columns,hGap,vGap) Konstruktor ini
mendefinisikan jumlah baris, kolom, dan ukuran gap horizontal/vertikal antar elemen dalam
pixel.
·
GridLoyout(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/panel-panel seperti tumpukan kartu. Hanya
satu container yang akan tampil untuk satu waktu. Komponen yang diletakkan
dengan layout ini berupa object yang bertipe 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 menepati ukuran yang berbeda dengan komponen lainnya.
6.
Boxlayout digunakan
untuk meletakkan komponen berurutan ke kanan (sumbu X) atau berurutan ke bawah
(sumbu Y). Penggunaan BoxLayout menggunakan class Box dimana merupakan
container yang secara internal telah menggunakan BoxLayout sebagai layout
manager-nya.
umsida.ac.id
fst.umsida.ac.id
Komentar
Posting Komentar