MODUL I
ELEMEN DASAR
JAVA
A. 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
|
B. 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[];
C. Kerangaka
Program Java
Progam dalam java dibagi- bagi menjadi class-class.Oleh
karena itu program dalam java dimulai dengan kata kunci class atau public
class.Lihat Contoh Berikut :
public class Hello {
public static void
main(String argv[]){
System.out.println("Hello java programmer UMSIDA");
}
}
MODUL II
OPERATOR, CONTROL FLOW DAN STRING
1
A. 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)
B.
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)
C.
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.
D.
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;
E.
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
|
(
) [ ]
|
++
-- ~!
|
*/
%
|
+
-
|
>>>>><<
|
>>=
<<=
|
==
! =
|
&
|
^
|
|
|
&&
|
||
|
?:
|
=
|
F.
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;
G. 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;
H.
Pernyataan switch, case dan break
Switch digunakan untuk percabangan (seleksi) lebih dari
dua. Ini digunakan untuk menghindari pergunaan if-else yang berlapis-lapis.
I.
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;
--------
};
MODUL III
CLASS
A. 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.
MODUL IV
THREADS
A. 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.
B. 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.
MODUL V
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.
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
|
MODUL VI
JAVA GRAPHICAL USER INTERFACE
A. 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
B. 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.
No comments:
Post a Comment