ELEMEN DASAR JAVA
A.
Konsep
Dasar Pemrograman Berorientasi Objek
Java adalah salah satu
bahasa pemograman yang menggunakan paradigma pemograman berorientasi
objek.Pemograman berorientasi objek 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.
1. Short
Tipe variabel short adalah bilangan bulat 16 bit yang mempunyai jangkauan nilai dari -215 sampai dengan 215-1 atau dari -32768 sampai dengan ±32767.
2. Long
Tipe variabel long adalah bilangan bulat 64 bit dengan jangkauan nilai dari -263sampai dengan 263-1. Contoh : Long 11 = 5456469;
3. Byte
Type variabel byte adalah bilangan bulat 8 bit yang mempunyai jangkauan nilai dari 27 sampai dengan 27-1 atau dari -128 sampai dengan +127. Contoh : Byte b1 = 50;
4. Float
Float adalah bilangan real (pecahan, dengan format floating point yang menggunakan tempat penyimpanan 32 bit. Ketelitian float sampai 10 angka dibelakang koma.
Contoh : Float f2 = 0.13f;
5. Double
Double adalah bilangan real (pecahan) dengan presisi 2 kali lebih baik dari variable float. Doubel membutuhkan 64 bit untuk penyimpanannya.
6. Char
Tipe variable char menyimpan kode Unicode (karakter internasional), karena itu membutuhkan 16 bit. Contoh : Char c1=’c’;
7. Boolean
Variabel Boolean berisi dua nilai, yaitu true dan false. Variabel Boolean dapat diperoleh dari operasi logika seperti perbandingan dua bilangan dan lain-lain.
8. Casting
Casting adalah teknik konversi suatu data tipe ke data tipe yang lain secara eksplisit. Yang menerangkan kepada compiler bahwa terjadi perubahan tipe variabel, sehingga hasilnya harus dikonversi ke tipe variabel tersebut.
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[];
Array Multidimesi
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];
D. Kerangka Program Java
Program dalam java dibagi- bagi menjadi class-class. 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.
public class Hello {
public static void main(String argv[]){
System.out.println("Hello java programmer UMSIDA");
}
}
main () adalah sebuah metode dengan argument array dari String yang bernama 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.
Program dalam java yang ditulis harus dicompile dengan java compiler dengan perintah :
C:\>javac Hello.Java
Javac adalah program java compiler, sedangkan Hello java adalah program yang akan di
compile. proses compile di atas akan menghasilkan file class yang bernama Hello.class. File
class yang dihasilkan dari proses kompilasi dapat kita eksekusi dengan java interpreter
dengan perintah :
C:\>java Hello
Komentar
Pemberian komentar dalam java dapat dilakukan dengan memberikan karakter //.
Contoh :
System.out.println(“Hello”); //mencetak kata hello
VISIT HERE :
umsida.ac.id
fst.umsida.ac.id
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
banyak hal. Ada beberapa jenis Operator dan Control Flow dalam 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
|| 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 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 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 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.
StringTokenizer
Class String Tokanizer 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.
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.
<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.
THREADS
Threads adalah
komponen java yang memungkinkan kita untuk membuat program yang bersifat
multitasking programming. Sebenarnya setiap program dalam java selalu
menggunakan paling tidak satu thread
Kita bisa
membuat aplikasi dan class berjalan dalam threads yang terpisah dengan dua
cara, yaitu :
·
Mengembangkan dari class Thread
(extending class Thread)
·
Mengimplementasikan Runnable interface
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.EXCEPTION (EKSEPSI)
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 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
|
JAVA GRAPHICAL USER INTERFACE
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.
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