BIODATA MAHASISWA
NAMA: BAMBANG KSIWANTO
NIM: 151080200181
KELAS:3B3
KELOMPOK:18
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, bilanganbulat 16 bit
|
int
|
integer, bilanganbulat 32 bit
|
long
|
long integer, bilanganbulat 64 bit
|
byte
|
bilanganbulat 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.
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 caras bb:
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
|
Arithmetic exception
|
Disebabkan oleh error secara
matematika seperti pembagian dengan nol
|
ArrayIndexOutOfBouns Exception
|
Disebabkan oleh array index yang
salah
|
Array Store Exception
|
Disebabkan ketika program mencoba
menyimpan file data yang salah
|
File Not Found Exception
|
Disebabkan oleh usaha mengakses
file yang tidak ada
|
IO Exception
|
Disebabkan oleh general I/O
failures, seperti kegagalan membaca file
|
Null Point Exception
|
Disebabkan oleh mereferensi obyek
null
|
Number Format Exception
|
Disebabkan ketika konversi antara
string dan bilangan gagal
|
Out Of Memory Exception
|
Disebabkan ketika tidak cukup
memory untuk alokasi obyek
|
Security Exception
|
Disebabkan ketika sebuah applet
mencoba melakukan aksi yang tidak diperbolehkan oleh setting security browser
|
Stack Overflow Exception
|
Disebabkan ketika sistem run
melebihi kapasitas stack
|
String Index Out Of Bounds Exception
|
Disebabkan ketika program mencoba
mengakses posisi karakter yang tidak ada di dalam string
|
BAB IV
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 :
a.
GridLayout(rows,columns,hGap,vGap)
Konstruktor ini mendefinisikan jumlah baris,kolom,dan ukuran gap
horizontal/vertikal antar elemen dalam pixel.
b.
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.
Tidak ada komentar:
Posting Komentar