modulpraktikumpbojava

35
Modul Praktikum Pemrograman Berorientasi Object MODUL I PENGENALAN BAHASA JAVA 1.1 TUJUAN a. Pada bab ini akan dibahas secara singkat tentang sejarah JAVA. b. Bab ini juga akan sedikit menyinggung tentang fase – fase dalam program JAVA. 1.2 DASAR TEORI Sebagai sebuah bahasa pemrograman, Java dapat membuat seluruh bentuk aplikasi, desktop, web dan lainnya, sebagaimana dibuat dengan menggunakan bahasa pemrograman konvensional yang lain. Java adalah bahasa pemrograman yang berorientasi objek (OOP) dan dapat dijalankan pada berbagai platform sistem operasi. Perkembangan Java tidak hanya terfokus oada satu sistem operasi, tetapi dikembangkan untuk berbagai sistem operasi dan bersifat open source. Sebagai sebuah peralatan pembangun, teknologi Java menyediakan banyak tools : compiler, interpreter, penyusun dokumentasi, paket kelas dan sebagainya. Aplikasi dengan teknologi Java secara umum adalah aplikasi serbt a guna yang dapat dijalankan pada seluruh mesin yang memiliki Java Runtime Environment (JRE). Terdapat dua komponen utama dari Deployment Environment. Yang pertama adalah JRE, yang terdapat pada paket J2SDK, mengandung kelas – kelas untuk semua paket teknologi Java yang meliputi kelas dasar dari Java, komponen GUI dan sebagainya. Komponen yang lain terdapat pada Web Browser. Hampir seluruh Web Browser komersial menyediakan interpreter dan runtime environment dari teknologi Java. Aliran proses kompilasi dan eksekusi sebuah program java digambarkan dalam fase–fase Pemrograman JAVA berikut: Langkah pertama dalam pembuatan sebuah program berbasis Java adalah menuliskan kode program pada text editor. Contoh text editor yang dapat digunakan antara lain : notepad, vi, 1 Wawan Kusdiawan

Upload: nono-heryana

Post on 18-Jun-2015

763 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

MODUL I

PENGENALAN BAHASA JAVA

1.1 TUJUAN

a. Pada bab ini akan dibahas secara singkat tentang sejarah JAVA.

b. Bab ini juga akan sedikit menyinggung tentang fase – fase dalam program JAVA.

1.2 DASAR TEORI

Sebagai sebuah bahasa pemrograman, Java dapat membuat seluruh bentuk aplikasi,

desktop, web dan lainnya, sebagaimana dibuat dengan menggunakan bahasa pemrograman

konvensional yang lain. Java adalah bahasa pemrograman yang berorientasi objek (OOP)

dan dapat dijalankan pada berbagai platform sistem operasi. Perkembangan Java tidak

hanya terfokus oada satu sistem operasi, tetapi dikembangkan untuk berbagai sistem

operasi dan bersifat open source. Sebagai sebuah peralatan pembangun, teknologi Java

menyediakan banyak tools : compiler, interpreter, penyusun dokumentasi, paket kelas dan

sebagainya.

Aplikasi dengan teknologi Java secara umum adalah aplikasi serbt a guna yang dapat

dijalankan pada seluruh mesin yang memiliki Java Runtime Environment (JRE). Terdapat

dua komponen utama dari Deployment Environment. Yang pertama adalah JRE, yang

terdapat pada paket J2SDK, mengandung kelas – kelas untuk semua paket teknologi Java

yang meliputi kelas dasar dari Java, komponen GUI dan sebagainya. Komponen yang lain

terdapat pada Web Browser. Hampir seluruh Web Browser komersial menyediakan

interpreter dan runtime environment dari teknologi Java.

Aliran proses kompilasi dan eksekusi sebuah program java digambarkan dalam fase–fase

Pemrograman JAVA berikut:

Langkah pertama dalam pembuatan sebuah program berbasis Java adalah menuliskan kode

program pada text editor. Contoh text editor yang dapat digunakan antara lain : notepad, vi,

1 Wawan Kusdiawan

Page 2: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

emacs dan lain sebagainya. Kode program yang dibuat kemudian tersimpan dalam sebuah

berkas berekstensi .java. Setelah membuat dan menyimpan kode program, kompilasi file

yang berisi kode program tersebut dengan menggunakan Java Compiler. Hasil dari adalah

berupa berkas bytecode dengan ekstensi .class.

1.3 PRAKTEK

a. aktifkan program jCreator dengan cara klik start|All Programs|JCreatorLE|JCreatorLE

b. klik File|New File

c. arahkan directory tempat menyimpan file

d. ketik nama project pada name misalnya “Halo”

e. klik Finish maka akan ditampilkan IDE JCreator seperti berikut

2 Wawan Kusdiawan

Code Editor

File View

Package View

General Output

Execute Compile File

Page 3: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

f. lalu ketik kode programberikut, pada code editor

public class Halo{public static void main(String args[]){

System.out.println("Halo Java");}

}

g. Klik menu build compile file atau klik icon compile file

h. Cek dan perbaiki kesalahan yang terjadi bila tidak ada kesalahan akan tampil

keterangan process completed

i. Lalu klik menu build execute atau klik icon execute, amati hasilnya

1.4 TUGAS

a. Buatlah aplikasi java untuk menampilkan output seperti berikut;

b. Buatlah aplikasi baru untuk menampilkan data mahasiswa yang terdiri dari :

NPM : xxxxx

Nama : xxxxx

Jurusan : xxxxx

Jenjang : xxxxx

3 Wawan Kusdiawan

Page 4: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

c. Buatlah daftar kesalahan yang mungkin Anda temukan ketika memulai menulis

program dengan JCreator

MODUL II

PERNYATAAN, EKSPRESI, TIPE DATA DAN VARIABEL

2.1 TUJUANa. Memahami konsep Pernyataan, ekspresi, tipe data dan variable

b. Mengembangkan program java sederhana menggunakan tipe data dan variabel

2.2 DASAR TEORI

Pernyataan adalah perintah yang menyebabkan sesuatu terjadi dan merepresentasikan aksi

tunggal dalam program Java. Contoh: int tahunProduksi; Setiap pernyataan ditutup oleh

karakter semicolon (;). Pernyataan dikelompokkan dengan tanda pembuka ({) dan penutup

(}). Kelompok ini disebut blok atau blok pernyataan.

Ekspresi adalah pernyataan yang dapat menghasilkan suatu nilai. Nilai yang dihasilkan oleh

pernyataan ini yang disebut dengan nilai balik (return value). Nilai balik bisa berupa

bilangan, boolean, atau objek. Method tanpa nilai balik biasanya menggunakan keyword

void. Contoh: hasilBagi = a / b;

Variabel Lokasi di dalam memori komputer yang digunakan untuk menyimpan suatu

informasi (nilai). Nilai variabel dapat diubah di pernyataan manapun di dalam program.

Mendeklarasikan variabel: tipe namaVariabel1 [, namaVariabel2]. Contoh: int hasilKali;

String namaSiswa, namaGuru, namaAdmin;

Bahasa pemrograman java mendefinisikan delapan tipe data primitif. Mereka diantaranya

adalah, boolean (untuk bentuk logika), char (untuk bentuk tekstual), byte, short, int, long

(integral), double and float (floating point).

2.3 PRAKTEK1. Buatlah aplikasi baru, selanjutnya masukan kode program berikut :

public class DefaultValue{static boolean b;static char c;static byte bt;static short s;

4 Wawan Kusdiawan

Page 5: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

static int i;static long l;static float f;static double d;public static void main(String args[]){System.out.println("Default value b : " + b);System.out.println("Default value c : " + c);System.out.println("Default value bt : " + bt);System.out.println("Default value s : " + s);System.out.println("Default value i : " + i);System.out.println("Default value l : " + l);System.out.println("Default value f : " + f);System.out.println("Default value d : " + d);}

} Lalu berikan nilai pada masing-masing variable.

2. Buat program aplikasi untuk kode program berikut:

public class Karakter{ public static void main(String[] args){

char karakter1=88, karakter2='X', karakter3='Y';

System.out.println("Karakter 1: " + karakter1); System.out.println("Karakter 2: " + karakter2); System.out.println("Karakter 3: " + karakter3); }}

public class OutputVariable {

public static void main( String[] args ){ int value = 10; char x; x = ‘A’;

System.out.println( value ); System.out.println( “The value of x=“ + x ); }

}

3. Lengkapi kode program berikut untuk membuat aplikasi menghitung bunga :

public class contvar{public static void main(String[] args){

………………………………………………………pokok = 20000;sukubunga = 0.10;bunga = pokok * sukubunga;pokok = pokok + bunga;

………………………………………………………}

}

2.4 TUGASBuatlah program untuk menhitung rumus :

5 Wawan Kusdiawan

Page 6: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

a. Luas persegi panjang

b. Luas segitiga

c. Luas lingkaran

MODUL III

O P E R A T O R

3.1 TUJUANa. Memahami konsep dan jenis-jenis operator

b. Mampu mengimplemntasikan konsep operator dalam program

3.2 DASAR TEORI

Operator adalah simbol dan karakter khusus (matematika) yang digunakan dalam suatu

ekspresi. Contoh: int x = 3; int y = x; int z = x * y; boolean status = true;. Dalam Java, ada

beberapa tipe operator. Ada operator arithmatika, operator relasi, operator logika, dan

operator kondisi. Operator ini mengikuti macam-macam prioritas yang pasti jadi compilernya

akan tahu yang mana operator untuk dijalankan lebih dulu dalam kasus beberapa operator

yang dipakai bersama-sama dalam satu pernyataan.

Dari sisi operator dasar aritmatika, java juga terdiri atas operator unary increment (++) dan

operator unary decrement (--). operator increment dan decrement menambah dah

mengurangi nilai yang tersimpan dalm bentuk variabel angka terhadap nilai 1. Sebagai

contoh pernyataan:

count = count + 1; //increment nilai count dengan nilai 1

pernyataan tersebut ekivalen dengan,

count++; Operator increment dan decrement dapat ditempatkan sebelum atau sesudah operand.

Ketika digunakan sebelum operand, akan menyebabkan variabel diincrement atau

didecrement oleh nilai 1, dan kemudian nilai baru digunakan dalam pernyataan dimana dia

ditambahkan. Sebagai contoh,

int i = 10, int j = 3; int k = 0; k = ++j + i; //akan menghasilkan k = 4+10 = 14

6 Wawan Kusdiawan

Page 7: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

Ketika operator increment dan decrement ditempatkan setelah operand, nilai variabel yang

lama akan digunakan lebih dulu dioperasikan lebih dulu terhadap pernyataan dimana dia

ditambahkan. Sebagai contoh,

int i = 10, int j = 3; int k = 0;k = j++ + i; //akan menghasilkan k = 3+10 = 13

Operator Relasi membandingkan dua nilai dan menentukan keterhubungan diantara nilai-

nilai tersebut. Hasil keluarannya berupa nilai boolean yaitu true atau false.

Operator logika memiliki satu atau lebih operand boolean yang menghasilkan nilai

boolean.Ada enam operator logika yaitu: && (logika AND), & (boolean logika AND), ||

(logika OR), | (boolean logika inclusive OR), ^ (boolean logika exclusive OR), dan ! (logika

NOT). Pernyataan dasar untuk operasi logika adalah :

x1 op x2Dimana x1, x2 dapat menjadi pernyataan boolean.Variabel atau konstanta, dan op adalah

salah satu dari operator &&, &, ||, | atau ^. Tabel kebenaran yang akan ditunjukkan

selanjutnya, merupakan kesimpulan dari hasil dari setiap operasi untuk semua kombinasi

yang mungkin dari x1 dan x2.

Operator kondisi ?: adalah operator ternary. Hal ini berarti bahwa operator ini digunakan

dalam tiga bentuk pernyataan condisional argumen yang digunakan bersama-sama. Struktur

pernyataan yang menggunakan operator kondisi adalah,

exp1?exp2:exp3Dimana nilai exp1 adalah suatu pernyataan boolean yang memiliki hasil yang salah satunya

harus berupa nilai true atau false. Jika exp1 bernilai true, exp2 merupakan hasil operasi .

Jika bernilai false, kemudian exp3 merupakan hasil operasinya.

3.3 PRAKTEKa. lengkapi kode program berikut untuk menghasilkan output yang benar :

Penambahan.javaint x, y, z;x = 42;y = x++;//tampilkan x, y saat iniz = ++x;//tampilkan x, z saat ini

7 Wawan Kusdiawan

Page 8: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

Pengurangan.javaint x, y, z;x = 42;y = x--;//tampilkan x, y saat iniz = --x;//tampilkan x, z saat ini

b. Buatlah program untuk operator pembandingan seperti berikut:

public class RelasiDemo { public static void main(String[] args) {

int i = 37; int j = 42; int k = 42;

System.out.println("Variable values..."); System.out.println(" i = " + i); System.out.println(" j = " + j); System.out.println(" k = " + k);

//lebih besar dari System.out.println("Greater than..."); System.out.println(" i > j = " + (i > j)); //false System.out.println(" j > i = " + (j > i)); //true System.out.println(" k > j = " + (k > j)); //false

//lebih besar atau sama dengan System.out.println("Greater than or equal to..."); System.out.println(" i >= j = " + (i >= j)); //false System.out.println(" j >= i = " + (j >= i)); //true System.out.println(" k >= j = " + (k >= j)); //true

//lebih kecil dari System.out.println("Less than..."); System.out.println(" i < j = " + (i < j)); //true System.out.println(" j < i = " + (j < i)); //false System.out.println(" k < j = " + (k < j)); //false

//lebih kecil atau sama dengan System.out.println("Less than or equal to..."); System.out.println(" i <= j = " + (i <= j)); //true System.out.println(" j <= i = " + (j <= i)); //false System.out.println(" k <= j = " + (k <= j)); //true

//sama dengan System.out.println("Equal to..."); System.out.println(" i == j = " + (i == j)); //false System.out.println(" k == j = " + (k == j)); //true

//tidak sama dengan System.out.println("Not equal to...");System.out.println(" i != j = " + (i != j)); //true System.out.println(" k != j = " + (k != j)); //false }

}

C. buatlah program untuk

8 Wawan Kusdiawan

Page 9: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

public class TestAND{ public static void main( String[] args ){

int i = 0; int j = 10;

boolean test= false;

//demonstrasi && test = (i > 10) && (j++ > 9); System.out.println(i); System.out.println(j); System.out.println(test);

//demonstrasi & test = (i > 10) & (j++ > 9); System.out.println(i); System.out.println(j);

System.out.println(test); }

}

d. Buatlah program untuk

public class kondisiOperator { public static void main( String[] args ){ String status = ""; int grade = 80; //mendapatkan status pelajar status = (grade >= 60)?"Passed":"Fail"; //print status System.out.println( status ); } }

3.4 TUGAS

a. Diberikan tabel dibawah ini, deklarasikan variabel yang terdapat didalamnya dengan tipe

data yang sesuai dan berikan nilai inisialisasi. Tampilkan hasil outputnya yaitu nama

variabel dan nilainya.

Berikut ini merupakan tampilan yang diharapkan sebagai hasil eksekusi program, Number = 10 letter = a result = true str = hello

b. Buatlah program yang menghasilkan output nilai rata-ratadari tiga angka. Nilai dari masing-masing tiga angka tersebut adalah 10, 20 dan 45. Tampilan Output yang diharapkan adalah, number 1 = 10

9 Wawan Kusdiawan

Page 10: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

number 2 = 20 number 3 = 45 Average is = 25

MODUL IV

STRUKTUR KONTROL

4.1 TUJUANa. Menggunakan struktur kontrol keputusan (if, else, switch) yang digunakan untuk

memilih blok kode yang akan dieksekusi

b. Menggunakan struktur kontrol pengulangan (while, do-while, for) yang digunakan

untuk melakukan pengulangan pada blok kode yang akan dieksekusi

4.2 DASAR TEORI

a. struktur control seleksi

Struktur kontrol keputusan adalah statement dari Java yang mengijinkan user untuk memilih

dan mengeksekusi blok kode dan mengabaikan blok kode yang lain. Statement-if

menentukan sebuah statement (atau blok kode) yang akan dieksekusi jika dan hanya jika

persyaratan boolean (boolean statement) bernilai true. Sedangkan Statement if-else

digunakan apabila kita ingin mengeksekusi sebuah statement dengan kondisi true dan

statement yang lain dengan kondisi false. Bentuk dari statement if,

if( boolean_expression ) statement;

atauif( boolean_expression ) statement1; else statement2;

dimana, boolean_expression adalah sebuah persyaratan boolean (boolean statement) atau

boolean variabel.

Cara lain untuk membuat percabangan adalah dengan menggunakan kata kunci switch.

Dengan menggunakan switch kita bisa melakukan percabangan dengan persyaratan yang

beragam. Bentuk statement switch

switch( switch_expression ){

10 Wawan Kusdiawan

Page 11: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

case case_selector1: statement1; // statement2; //block 1 . . . // break; case case_selector2: statement1; // statement2; //block 2 . . . // break; . . .

default: statement1; // statement2; //block n . . . // break; }

dimana, switch_expression adalah persyaratan integer atau character dan case_selector1,

case_selector2 dan seterusnya adalah konstanta nilai integer yang unique (unik).

b. Struktur Kontrol Perulangan

Struktur kontrol pengulangan adalah statement dari Java dimana kita bisa mengeksekusi

blok code berulang-ulang dalam kurun nilai tertentu. Ada tiga macam jenis struktur kontrol

pengulangan yaitu while, do-while, dan for-loops.

Statement while loop adalah statement atau blok statement yang diulang-ulang sampai

mencapai kondisi yang cocok. Bentuk statement while,

while( boolean_expression ){ statement1; statement2; . . .

} Statement di dalam while loop akan dieksekusi berulang-ulang selama boolean_expression

bernilai true.

Do-while loop mirip dengan while-loop. Statement di dalam do-while loop akan dieksekusi

beberapa kali selama kondisi bernilai true. Perbedaan antara while dan do-while loop

adalah dimana statement di dalam do-while loop dieksekusi sedikitnya satu kali. Bentuk

statement do-while,

do{ statement1; statement2; . . .

}while( boolean_expression );

11 Wawan Kusdiawan

Page 12: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

Statement di dalam do-while loop akan dieksekusi pertama kali, dan dilakukan pengecekan

kondisi dari boolean_expression. Jika nilai tersebut belum mencapai nilai yang diinginkan,

statement akan dieksekusi lagi.

Seperti pada struktur pengulangan sebelumnya yaitu melakukan pengulangan eksekusi code

beberapa kali. Bentuk dari for loop,

for (InitializationExpression; LoopCondition; StepExpression){ statement1; statement2; . . .

} dimana,

InitializationExpression – inisialisasi dari variabel loop.

LoopCondition - membandingkan variabel loop pada nilai batas.

StepExpression - melakukan update pada variabel loop.

4.3 PRAKTEKa. buatlah program berikut dengan statement IF

public class GradeIf { public static void main( String[] args ) { double grade = 92.0; if( grade >= 90 ){ System.out.println( "Excellent!" ); } else if( (grade < 90) && (grade >= 80)){ System.out.println("Good job!" ); } else if( (grade < 80) && (grade >= 60)){ System.out.println("Study harder!" ); } else{ System.out.println("Sorry, you failed."); } } }

b. buatlah program berikut dengan switch

public class GradeSwitch { public static void main( String[] args )

{ int grade = 90;

switch(grade){ case 100:

System.out.println( "Excellent!" );

12 Wawan Kusdiawan

Page 13: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

break; case 90:

System.out.println("Good job!" ); break;

case 80: System.out.println("Study harder!" ); break;

default: System.out.println("Sorry, you failed.");

} } }

class SwitchDemo { public static void main(String[] args) {

int month = 8; switch (month) { case 1: System.out.println("January"); break; case 2: System.out.println("February"); break; case 3: System.out.println("March"); break; case 4: System.out.println("April"); break; case 5: System.out.println("May"); break; case 6: System.out.println("June"); break; case 7: System.out.println("July"); break; case 8: System.out.println("August"); break; case 9: System.out.println("September"); break; case 10: System.out.println("October"); break; case 11: System.out.println("November"); break; case 12: System.out.println("December"); break; default: System.out.println("Invalid month.");break; } }}

c. Lengkapilah kode program berikut

int i = 4; while ( i > 0 ){

System.out.print(i); i--;

}

int x = 0; do { System.out.println(x);

x++; }while (x<10);

int i = 0; while( i < 10 ){ System.out.print(i); i++; }

13 Wawan Kusdiawan

Page 14: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

4.4 TUGAS

1. Ambil sebuah angka sebagai input dari user, dan outputnya berupa kata yang sesuai dengan angka. Angka yang dimasukkan antara 1-10. Jika user memasukkan nilai yang tidak sesuai berikan output “Invalid number”. a. Gunakan statement if-else untuk menyelesaikan b. Gunakan statement switch untuk menyelesaikan

2. Buat sebuah program yang mencetak nama Anda selama seratus kali. Buat tiga versi program ini menggunakan while loop, do while dan for-loop.

MODUL V

MENDEFINISKAN DAN MEMANGGIL CLASS DAN METHOD

5.1 TUJUANa. mendefinisikan class dan method dalam java

b. memanggil class dengan java

c. mengimplementasikan dalam program

5.2 DASAR TEORIDalam pendefinisian class, dituliskan :

<modifier> class <name> { <attributeDeclaration>* <constructorDeclaration>* <methodDeclaration>*

} dimana :

<modifier> adalah sebuah access modifier, yang dapat dikombinasikan dengan tipe modifier lain.

Pada bagian ini, kita akan membuat sebuah class yang berisi record dari siswa. Jika kita telah mengidentifikasikan tujuan dari pembuatan kelas, maka dapat dilakukan pemberian nama yang sesuai. Nama yang tepat pada class ini adalah StudentRecord.

Untuk mendefinisikan class, kita tuliskan : public class StudentRecord {

//area penulisan kode selanjutnya }

dimana,

Public - Class ini dapat diakses dari luar package Class - Keyword yang digunakan di pembuatan class Java

14 Wawan Kusdiawan

Page 15: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

StudentRecord - Identifier yang menjelaskan class

Method adalah implementasi dari bagaimana bekerjanya sebuah class. Method melakukan:

1. Manipulasi data

2. Perhitungan matematika

3. Memonitor kejadian dari suatu event

5.3 PRAKTEK

a. Buatlah sebuah file bernama Mobil.java dengan kode sebagai berikut:

class Mobil {String warna;int tahunProduksi;}

b. Buatlah file java beri nama MobilBeraksi.java dengan kode sebagai berikut :

public class MobilBeraksi{ public static void main(String[] args){ // Membuat object Mobil mobilku = new Mobil(); /* memanggil atribut dan memberi nilai */ mobilku.warna = "Hitam"; mobilku.tahunProduksi = 2006; System.out.println("Warna: " + mobilku.warna); System.out.println("Tahun: " + mobilku.tahunProduksi); }

}

c. Buatlah file java beri nama Mobil2.java dengan kode sebagai berikut :

class Mobil2{ String warna; int tahunProduksi; void printMobil(){

System.out.println("Warna: " + warna); System.out.println("Tahun: " + tahunProduksi); }}

d. Buatlah file java beri nama Mobil2Beraksi.java dengan kode sebagai berikut :

15 Wawan Kusdiawan

Page 16: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

public class Mobil2Beraksi{ public static void main(String[] args){ // Membuat object Mobil2 mobilku = new Mobil2();

/* memanggil atribut dan memberi nilai */ mobilku.warna = "Hitam"; mobilku.tahunProduksi = 2006; mobilku.printMobil();

}

}

f. Buatlah file java beri nama Sepeda.java dengan kode sebagai berikut :

class Sepeda{ int kecepatan = 0; int gir = 0;

// method void ubahGir(int pertambahanGir) { gir= gir+ pertambahanGir; System.out.println(" Gir:" + gir); }

void tambahKecepatan(int pertambahanKecepatan) { kecepatan = kecepatan+ pertambahanKecepatan; System.out.println(" Kecepatan:" + kecepatan); }}

g. Buatlah file java beri nama SepedaBeraksi.java dengan kode sebagai berikut :

public class SepedaBeraksi{ public static void main(String[] args) {

// Membuat object Sepeda sepedaku = new Sepeda();

//memanggil atribut dan memberi nilai sepedaku.kecepatan=10; sepedaku.gir=2;

// Memanggil method dan menunjuk nilai parameter sepedaku.tambahKecepatan(30); sepedaku.ubahGir(3); }

}

5.4 TUGAS1. a. Kembangkan Class Mobil2

b. Ubah nama classs menjadi MobilLengkap dan masukkan method: hidupkanMobil() matikanMobil() ubahGigi()

c. Isi masing2 method dengan tampilan status menggunakan System.out.println()d. Panggil method-method diatas dari MobilLengkapBeraksi

16 Wawan Kusdiawan

Page 17: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

2. a. Buat Class bernama Matematika, yang berisi method dengan dua parameter: pertambahan pengurangan perkalian pembagian

b. Buat Class bernama MatematikaBeraksi, yg mengeksekusi method dan menampilkan: Pertambahan: 20 + 20 = 40 Pengurangan: 10-5 = 5 Perkalian: 10x20 = 200 Pembagian: 21/2 = 10.5 (float or double)

MODUL VI

OPERASI I/O STREAM

6.1 TUJUANa. Mendapatkan input dari comman-lineb. Membaca standart inputc. implementasi dalam program

6.2 DASAR TEORIDibandingkan dengan mendapatkan masukan user dari command-line, sebagian user lebih memilih untuk memasukkan data bilamana diminta oleh program pada saat eksekusi. Satu cara dalam melakukan hal ini adalah dengan menggunakan stream. Sebuah stream adalah abstraksi dari sebuah file atau sebuah perangkat yang mengijinkan beberapa set item untuk dibaca atau ditulisi. Streams terhubung dengan physical devices seperti keyboards, consoles dan files. Terdapat dua bentuk umum dari streams, byte streams dan character streams. Byte streams digunakan pada data biner, sedangkan character streams digunakan pada karakter Unicode. System.in dan System.out adalah dua contoh dari byte streams yang digunakan dalam Java. Contoh pertama mereferensikan pada keyboard, kemudian contoh kedua mereferensikan pada console. Untuk membaca karakter dari keyboard, Anda dapat menggunakan byte stream System.in yang terdapat pada object BufferedReader. Baris berikut menunjukkan bagaimana untuk melakukan hal tersebut :

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

Method read dari object BufferedReader selanjutnya digunakan untuk membaca nilai input dari perangkat input.

ch=(int)br.read(); //method read menghasilkan nilai integer

Jika Anda lebih memilih untuk membaca keseluruhan baris daripada membaca satu karakter tiap waktu, gunakan method readLine : str = br.readLine();

Stream Standard

1. System.in: menangani pembacaan dari keyboard (standard input)

17 Wawan Kusdiawan

Page 18: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

2. System.out: mengirimkan keluaran ke layar (standard output)3. System.err: mengirimkan kesalahan (standard error)

Perintah sederhana untuk memasukkan data dari keyboard adalah membaca sebagai karakter. Penggunaannya memerlukan blok try-catch (akan dibahas pada bagian eksepsi)Contoh:

char karakter;karakter = System.in.read();

Untuk mudahnya, gunakan class InputKeyboard.java untuk menerima masukkan data dari keyboard.

6.3 PRAKTEKa. buatlah program dengan nama InputKeyboard.java, seperti berikut

import java.io.*; public class InputKeyboard{ public static String inputString(){ int karakter; String str ="“; boolean selesai = false;

while(!selesai){ try{

karakter = System.in.read(); if(karakter<0||(char)karakter =='\n')selesai = true;

else if ((char) karakter != '\r') str = str + (char) karakter; }catch(java.io.IOException e){

System.err.println("Ada kesalahan");selesai = true;

}}return str;}

}

b. lalu buat program dengan nama SalamKenal.java, seperti berikut

import java.io.*; public class SalamKenal{ public static void main( String[] args ){

System.out.print("Masukkan Nama Anda: "); String name = InputKeyboard.inputString(); System.out.println("Halo, Salam Kenal " + name +"!"); }}

c. buatlah program dengan nama KonversiData.java, seperti berikut

public class KonversiData{ public static void main(String[] args){ String dataString;

18 Wawan Kusdiawan

Page 19: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

System.out.println("Masukkan sebuah bilangan bulat:" ); dataString = InputKeyboard.inputString(); int dataBulat = Integer.valueOf(dataString).intValue();

System.out.println("Masukkan sebuah bilangan pecahan:" ); dataString = InputKeyboard.inputString(); double dataPecahan = Double.valueOf(dataString).doubleValue(); System.out.println("Bilangan Bulat:" + dataBulat); System.out.println("Bilangan Pecahan:" + dataPecahan); }}

6.4 TUGASa. diketahui program untuk menghitung luas segitiga sebagai berikut:

public class LuasSegitiga { public static void main(String[] args) { int panjang = 17; int tinggi = 11; double luas;

luas = ((double)(panjang*tinggi))/2; System.out.println("Luas Segitiga : " + luas); }}

Ubah class LuasSegitiga dengan nilai panjang dan tinggi dimasukkan oleh user lewat prompt

b. dengan contoh program pada tugas (a) diatas buat program untuk menghitung luas

persegi panjang dan luas lingkaran.

19 Wawan Kusdiawan

Page 20: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

MODUL VII

PEWARISAN (INHERITANCE)

7.1 TUJUAN a. Mendefinisikan superclasses dan subclasses

b. Override method dari superclasses

c. Mengimplementasikan konsep pewarisan

7.2 DASAR TEORI

Dalam Java, semua class, termasuk class yang membangun Java API, adalah subclasses dari

superclass Object. Contoh hirarki class diperlihatkan di bawah ini. Beberapa class di atas

class utama dalam hirarki class dikenal sebagai superclass. Sementara beberapa class di

bawah class pokok dalam hirarki class dikenal sebagai subclass dari class tersebut.

Pewarisan adalah keuntungan besar dalam pemrograman berbasis object karena suatu sifat atau method didefinisikan dalam superclass, sifat ini secara otomatis diwariskan dari semua subclasses. Jadi, Anda dapat menuliskan kode method hanya sekali dan mereka dapat digunakan oleh semua subclass. Subclass hanya butuh mengimplementasikan perbedaannya sendiri dan induknya.

20 Wawan Kusdiawan

Page 21: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

7.3 PRAKTEKa. buatlah program dengan nama Sepeda.java seperti berikut:

class Sepeda{ int kecepatan = 0; int gir = 0; // method void ubahGir(int pertambahanGir) { gir= gir+ pertambahanGir; System.out.println("Gir:" + gir); } void tambahKecepatan(int pertambahanKecepatan) { kecepatan = kecepatan+ pertambahanKecepatan; System.out.println("Kecepatan:" + kecepatan); }}

b. buatlah program dengan nama SepedaGunung.java seperti berikut:

class SepedaGunung extends Sepeda {

int setSadel;

public void setSadel(int nilaiSadel) {

setSadel = nilaiSadel;

System.out.println(“Tinggi

Sadel:”+setSadel);

}

}

c. buatlah program dengan nama SepedaGunungBeraksi.java seperti berikut:

class SepedaGunungBeraksi { public static void main(String[] args) { // Membuat object SepedaGunung sepedaku = new sepedaGunung();

// Memanggil method di object sepedaku.tambahKecepatan(10); sepedaku.ubahGir(2); sepedaku.setSadel(20); }}

7.4 TUGAS

Buat class MobilBMWyang merupakan inherit dari class MobilLengkap

a. Tambahkan method nontonTV() yang menampilkan tulisan di layar:

b. TV dihidupkan

21 Wawan Kusdiawan

Page 22: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

c. TV mencari channel

d. TV menampilkan gambar

e. Buat class MobilBMWBeraksi yang memanggil method nontonTV, hidupkanMobil,

matikanMobil, ubahGigi

MODUL VIII

POLIMORFISME (POLYMORPHISM)

8.1 TUJUANa. Memahami konsep Polimorfisme

b. Mengimplementasikan konsep Polimorfisme dalam program

8.2 DASAR TEORI

Polymorphism: Suatu object dapat memiliki berbagai bentuk, sebagai object dari classnya

sendiri atau object dari superclassnya

1. Overloading: Penggunaan satu nama untuk beberapa method yang berbeda parameter

2. Overriding: Terjadi ketika deklarasi method subclass sama dengan method dari

superclassnya

Contoh Polimorfisme - overriding:

class Mobil { String warna; int tahunProduksi;

public Mobil(String warna, int tahunProduksi){ this.warna = warna;

this.tahunProduksi = tahunProduksi; }

public Mobil(){ }

void info(){ System.out.println("Warna: " + this.warna);

22 Wawan Kusdiawan

Page 23: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

System.out.println("Tahun: " + this.tahunProduksi); }

}

public class MobilKonstruktor{ public static void main(String[] args){ Mobil mobilku = new Mobil(“Merah”, 2003); mobilku.info();

Mobil mobilmu = new Mobil(); mobilmu.info(); }}

Output programnya :

Contoh lain Overloading:

class Lingkaran{ public buatLingkaran(int diameter){ ... } public buatLingkaran(int diameter, int x, int y){ ... } public buatLingkaran(int diameter, int x, int y, int warna, String namaLingkaran){ ... }

}

8.3 PRAKTEK

a. Buatlah file program dengan nama Sepeda.java seperti berikut:

class Sepeda{ int kecepatan = 0; int gir = 0;

// method

23 Wawan Kusdiawan

Page 24: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

void ubahGir(int pertambahanGir) { gir= gir+ pertambahanGir; System.out.println("Gir:" + gir); }

void tambahKecepatan(int pertambahanKecepatan) { kecepatan = kecepatan+ pertambahanKecepatan; System.out.println("Kecepatan:" + kecepatan); }}

b. Buatlah file program dengan nama SepedaGunung.java seperti berikut:

class SepedaGunung extends Sepeda { int setSadel;

void ubahGir(int pertambahanGir) { gir= 2*(gir+ pertambahanGir ); System.out.println("Gir:" + gir);

} }

c. Buatlah file program dengan nama SepedaGunungBeraksi.java seperti berikut:

class SepedaGunungBeraksi { public static void main(String[] args) { // Membuat object SepedaGunung sepedaku = new sepedaGunung(); // Memanggil method di object sepedaku.tambahKecepatan(10); sepedaku.ubahGir(2); sepedaku.setSadel(20); }

}

8.4 TUGAS

a. Kembangkan class Matematika dan MatematikaBeraksi

b. Lakukan overloading pada Method yang ada (pertambahan, pengurangan, perkalian,

c. pembagian) . Method baru adalah bertipe data double (pecahan) dan memiliki 3

parameter

d. Uji di kelas MatematikaBeraksi dengan parameter pecahan: 12.5, 28.7, 14.2

e. Misalnya: pertambahan(12.5, 28.7, 14.2)

24 Wawan Kusdiawan

Page 25: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

Matematika.javaclass Matematika{ int hasilPertambahan1, hasilPertambahan2;public void pertambahan (int a, int b){ hasilPertambahan1 = a + b; System.out.println(“hasil:” + hasilPertambahan1);}public void pertambahan (double a, double b, double c){ hasilPertambahan2 = a + b + c; System.out.println(“hasil:” + hasilPertambahan2);}...}

MODUL IX

PACKAGE dan INTERFACE

9.1 TUJUAN

a. memahami definisi dan konsep Package dan Interface

b. mampu mengimplementasikan dalam program

9.2 DASAR TEORI

Package adalah koleksi dari beberapa class dan interface yang berhubungan, dan

menyediakan proteksi akses dan pengelolaan namespace. Satu package adalah satu

subfolder di file system. Package sangat berguna untuk mengorganisir file dalam suatu

project atau library. Nama package menggunakan lowercase, Keyword: package name;

Interface digunakan apabila kita ingin menentukan apa yang harus dilakukan oleh suatu

class tapi tidak menentukan bagaimana cara untuk melakukannya. Interface sebenarnya

sama dengan class, tapi hanya memiliki deklarasi method

tanpa implementasi.

9.3 PRAKTEK

a. buatlah program java dengan nama Budi.java seperti berikut

package kelasku; public class Budi{

25 Wawan Kusdiawan

Page 26: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

public void info(){ System.out.println(“Kelas Budi”); }}

b. buat file Joko.java dengan struktur seperti berikut

package kelasku; public class Joko{ public void info(){ System.out.println(“Kelas Joko”); }}

c. Buatlah program dengan nama PaketBeraksi.java seperti berikut:

import kelasku.Budi;import kelasku.Joko;

public class PaketBeraksi{ public static void main(String[] args){ Budi objectBudi = new Budi(); objectBudi.info(); Joko objectJoko = new Joko(); objectJoko.info(); }}

d. buatlah program dengan nama InterfaceBeraksi.java seperti berikut

interface IntLampu{ public static final int KeadaanHidup=1; public static final int KeadaanMati=0; public abstract void hidupkan(); public abstract void matikan();}

class Lampu implements IntLampu{ int statusLampu=0;

public void hidupkan(){ if (this.statusLampu == KeadaanMati){ this.statusLampu = KeadaanHidup;

26 Wawan Kusdiawan

Page 27: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

System.out.println("Hidupkan Lampu! --> Lampu Hidup"); }else{ System.out.println("Hidupkan Lampu! --> Lampu Sudah Hidup Kok");} }

public void matikan(){ if (this.statusLampu == KeadaanHidup){ this.statusLampu = KeadaanMati; System.out.println("Matikan Lampu! --> Lampu Mati"); }else{ System.out.println("Matikan Lampu! --> Lampu Sudah Mati Kok"); }}}

public class InterfaceBeraksi{ public static void main(String[] args){

Lampu lampuKamar = new Lampu(); System.out.println("Status Lampu Saat Ini: Mati");

lampuKamar.hidupkan(); //Hidupkan Lampu lampuKamar.matikan(); //Matikan Lampu lampuKamar.matikan(); //Matikan Lampu lampuKamar.hidupkan(); //Hidupkan Lampu lampuKamar.hidupkan(); //Hidupkan Lampu }}

9.4 TUGAS1. Package

a. Kembangkan class Budi dan Joko

b. Buat method matakuliah() menampilkan mata kuliah yang diajar Budi dan Joko

c. Paketkan kedua class tadi dalam satu Package bernama dosen (gunakan keyword:

package)

d. Buat Class DosenBeraksi yang menjalankan method yang ada di kedua Class tadi

(gunakan keyword: import)

27 Wawan Kusdiawan

Page 28: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

MODUL X

GUI EVENT HANDLING

10.1 TUJUAN

a. Menerangkan komponen-komponen delegation event model

b. Mengerti bagaimana delegation event model bekerja

c. Menciptakan aplikasi GUI yang berinteraksi dengan user

10.2 DASAR TEORI

Delegasi event model menguraikan bagaimana program Anda dapat merespon interaksi dari

user. Untuk memahami model, mari kita pelajari pertama-tama dengan tiga komponen

utamanya.

1. Event Source

The event source mengacu pada komponen GUI yang men-generate event. Sebagai

contoh, jika user menekan tombol, event source dalam hal ini adalah tombol.

2. Event Listener/Handler

The event listener menerima berita dari event-event dan proses-proses interaksi user.

Ketika tombol ditekan, listener akan mengendalikan dengan menampilkan sebuah

informasi yang berguna untuk user.

3. Event Object

Ketika sebuah event terjadi (misal, ketika user berinteraksi dengan komponen GUI),

sebuah objek event diciptakan. Objek berisi semua informasi yang perlu tentang event

yang telah terjadi. Informasi meliputi tipe dari event yang telah terjadi, seperti ketika

28 Wawan Kusdiawan

Page 29: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

mouse telah di-klik. Ada beberapa class event untuk kategori yang berbeda dari user

action. Sebuah event object mempunyai tipe data tentang salah satu dari class ini.

10.3 PRAKTEK

Tahapan Pengembangan

1. Setting Up the Project

2. Adding Code to the Generated Source File

3. Compiling and Running the Application

4. Building and Deploying the Application

a. setting up the project

b. Masukan nama aplikasi, seperti contoh berikut

arahkan directory penyimpanan file :

c. lalu klik finish maka akan ditampilkan dialog berikut

29 Wawan Kusdiawan

Page 30: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

d. ketik kode program pada code editor seperti berikut :

ketik kode setelah pernyataan:

// TODO code application logic hereKetik statement berikut :

System.out.println("Hello World!");

e. Compile dan Run program yang telah diketik, pilih Run | Run Mind Project (F6), seperti tampilan berikut

f. Building and Deploying aplikasi dengan cara pilih Run | Clean and Build Main Project (Shift-F11)

30 Wawan Kusdiawan

Page 31: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

Tahapan Pengembangan

1. Setting up the CelsiusConverter Project

2. Learning the NetBeans IDE Basics

3. Creating the CelsiusConverter GUI

4. Adjusting the CelsiusConverter GUI

5. Adding the Application Logic

e. Buat file project baru dengan cara File | New Project

f. Pilih General | Java Application, seperti tampilan berikut

g. Masukan nama Project dan tentukan directory penyimpanan file :

31 Wawan Kusdiawan

Page 32: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

h. Tambahkan JFrame Form dengan cara klik nama project pilih New pilih JFrame Form seperti tampilan berikut

i. Masukan nama GUI class seperti tampilan berikut

j. Seting judul frame dengan memasukan pada property title seperti tampilan berikut:

32 Wawan Kusdiawan

Page 33: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

k. Tambahkan komponen JTextField, dan JLabel seperti tampilan berikut

l. Tambahkan JButton dan Label, seperti tampilan berikut

m. Seting properti masing-masing komponen sehingga menjadi seperti berikut

33 Wawan Kusdiawan

Page 34: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

n. Masukan kode program dengan cara

o. Lalu ketik kode program berikut

34 Wawan Kusdiawan

Page 35: ModulPraktikumPBOJava

Modul Praktikum Pemrograman Berorientasi Object

p. Jalakan program aplikasi diatas

10.4 TUGAS

Buatlah program aplikasi dengan GUI untuk menghitung luas :

a. Persegipanjang

b. Segitiga

35 Wawan Kusdiawan