Rangkuman Praktikum Mata Kuliah Pemrograman Berbasis Objek
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, 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
|
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.
Komentar
Posting Komentar