Modul 3, Praktikum : Algoritma dan Pemrograman 1
I.
Bahan Kajian
1.
Kelas(Class) Kelas adalah definisi umum (pola, template atau cetak biru) untuk himpunan objek sejenis . Kelas menetapkan spesifikasi perilaku (behavior) dan atribut dari objek-objek (*lebih lanjut mengenai hubunga n dan objek akan dibahas di bab-bab berkutnya). Pada bahasa java segala sesuatu yang didefinisikan harus berada di dalam kelas. Kelas terdiri dari atribut dan method.
2.
Tipe Data Tipe data pada java dibagi dua, yaitu tipe data primitif dan referensi. Pada Algoritma dan Pemrograman 1 kita hanya akan membahas tipe data primitif. Tipe data primitif adalah tipe data yang sudah terdefinisikan di java, tidak diturunkan dari kelas lain dan variabelnya dapat menampung nilai sesuai dengan tipe data tersebut. Tipe data primitif dibagi menjadi beberapa jenis, yaitu Tipe Data Bilangan Bulat Tipe data yang digunakan untuk menampung bilangan bulat Tipe Ukur an Nilai byte 8 bit -128 s/d 127 short 16 bit -32768 s/d 32767 int 32 bit -2147483648 s/d 2147483647 long 64 bit -9223372036854775808 s/d 92233720368547758087
Tipe Data Floating Point Tipe data yng digunakan untuk menampung bilangan desimal Tipe Ukur an Nilai byte 32 bit 3.4e-038 s/d 3.4e+038 short 64 bit 1.7e-308 s/d 1.7e+308 Tipe Data boolean Variabel yang menggunakan tipe data ini memiliki salah satu dari dua nilai : True False Tipe ini dihasilkan semua operator relasional seperti a < b, a > b, dll Contoh : boolean status = true; Tipe Data char Tipe data char digunakan untuk menyimpan karakter unicode tunggal Tanda petik tunggal sebagai penanda karakter Contoh : char a = ‘A’; char = ‘$’;
3.
Variabel (Peubah) Variabel merupakan unit dasar penyimpanan di program Java , variable adalah tempat penyimpanan data/ informasi di memori yang isi (value)nya dapat diubah. Variabel didefinisikan menggunakan kombinasi antara identifier, tipe dan dapat juga sekaligus pemberian nilai awal (inisialisasi). Contoh : - boolean status; - int num1 = 0, num2 = 10, num3 = 109; - char ch = ‘$’;
4.
Method 4.1 Definisi
[if-unpas] 2010 @author : Hendra Komara, ST.
Page 1
Modul 3, Praktikum : Algoritma dan Pemrograman 1
Method adalah operasi atau kegiatan yang dapat dilakukan suatu objek. Salah satu kegunaan method yaitu untuk memodularisasi program melalui pemisahan tugas dalam suatu tugas. Seperti halnya atribut, method juga merupakan anggota class. 4.2 Penamaan Penamaan method seharusnya berupa kata kerja /ungkapan kata kerja, untuk penulisanya mengacu pada konvensi Camel Casting. Dimana huruf pertama untuk setiap kata pertama ditulis dengan hurup kecil (lowercase) dan huruf pertama kata selanjutnya ditulis dengan huruf besar (uppercase). Selain itu biasanya, nama method mencerminkan operasi yang ditangani method tersebut. Contoh : setName(), setPerimeter(), readTable(), delete(), run(), on(),off(),dll. 4.3 Pendefinisian Secara umum method ada 2 jenis, yaitu method yang mengembalikan nilai dan method yang tidak mengembalikan nilai. - Bentuk method yang mengembalikan nilai [modifiers] [type_return] [nama_method] ([parameter1], ..., [parameter N]) { [deklarasi-deklarasi dan proses]; return [nilai_kembalian]; }
-
Bentuk metod yang tidak mengembalikan nilai
[modifiers] void [nama_method] ([parameter1], ..., [parameter N]) { [deklarasi-deklarasi dan proses]; }
4.4 Method accessor dan mutator - Method accessor merupakan yang digunakan untuk membaca suatu variable private didalam suatu class. Contoh : package ac.ifunpas.praktikum.ap1.modul3.nrp1003999; public class Aritmatic { private int nilai1; public int getNilai1(){ return nilai1; } }
[if-unpas] 2010 @author : Hendra Komara, ST.
Page 2
Modul 3, Praktikum : Algoritma dan Pemrograman 1
-
Method mutator merupakan method yang digunakan untuk mengubah nilai dari variable private didalam suatu class. Contoh: package ac.ifunpas.praktikum.ap1.modul3.nrp1003999; public class Aritmatic { private int nilai1; public void setNilai1(int nilai1){ this.nilai1 = nilai1; } }
4.5 Static method Keyword static di java digunakan untuk mengakses member baik variable ataupun method pada class tertentu tanpa harus membuat suatu object dari class itu. Umumnya untuk mengakses member dari kelas lain kita harus membuat object kelas itu tapi dengan menggunakan keyword static kita dapat langsung menggunakan member kelas. package ac.ifunpas.praktikum.ap1.modul3.nrp1003999; public class Aritmatic0 { static static static public
int x; int y; int hasil; static void hitungNilai(){ x = 1; y = 3; hasil = x + y; System.out.println("Hasil adalah : "+hasil);
} public static void main(String[] args) { hitungNilai(); } }
[if-unpas] 2010 @author : Hendra Komara, ST.
Page 3
Modul 3, Praktikum : Algoritma dan Pemrograman 1
5.
Struktur Program Java public class NamaKelas { //daftar definisi var milik kelas static int namaVariable1; static char namaVariable2; static double namaVariable3; //pendefinisian method1 public static void namaMethod1(){ //implematasi Method } //pendefinisian method2 public static void namaMethod2(){ //implematasi Method } //method awal eksekusi program public static void main(String[] args) { //impelementasi Method } } Catatan : Struktur program di atas adalah bukan fiks struktur progra m java, tetapi struktur tersebut disesuaikan dengan materi Alpro1 dan ditujuakan untuktidak membingungkan praktikan. Praktikan boleh bertanya pada asisten jika ingin mengetahui struktur p rogra m java yang sesungguhnya.
II.
Instruksi Praktikum
1.
Latihan 1 Instruksi : 1. Buat project baru 2. Klik File | New | Java Project 3. Beri nama projectnya dengan nrp anda modul2 | klik tombol finish 4. Buat paket baru, klik kanan di folder src, pilih new | package | beri nama: ap1.prak. modl2.nrp1040xxx 5. Buat class baru, klik kanan di package ap1.prak. modl2.nrp1040xxx pilih new | class | beri nama Komentar | klik button finish 6. Kemudian ketikkan source dibawah ini di editornya :
package ap1.prak.modl2.nrp1040999; /** * @purpose Menunjukan kelas, atribut dan method * @copyright Hendra Komara, ST. * @author Hendra Komara, ST. * @contact @komarahendra * @version 1.0 */ /* * Nama Kelas DemoKomentar * Memilki satu var milik kelas, yaitu result * Memiliki tiga buah method, yaitu show(), add(), main(String[] args) */ public class DemoKomentar{ //--------------------------------------------//A. Tanggungjawab-2 (respomsibilities) //--------------------------------------------//--------------------------------------------[if-unpas] 2010 @author : Hendra Komara, ST.
Page 4
Modul 3, Praktikum : Algoritma dan Pemrograman 1
//B. Struktur data dan atribut-atribut //--------------------------------------------//--------------------------------------------//C. Konstruktor //--------------------------------------------//--------------------------------------------//D. Metode-2 pengaksesan (accessor method) //--------------------------------------------//--------------------------------------------//E. Metode-2 bisnis/pengolahan (bussines/procesing method) //--------------------------------------------//--------------------------------------------//F. Metode-2 bantuan (helper method) //--------------------------------------------//--------------------------------------------//G. metode-2 pengujian (testing method) //--------------------------------------------/* * Pendefinisian var kelas dengan idetifier result * var result bertipe int * var a menampung nilai 0 */ static int result; // var result, beripe int, memiliki nilai 0 /* * Nama method ini adalah show() * Merupakan Method untuk menampilkan nilai dari var result * Method yang tidak mengembalikan nilai */ public static void show() { System.out.println("Hasil adalah : "+result); } /* * Nama method ini adalah add() * Merupakan Method Penjumlahan * Method yang tidak mengembalikan nilai */ public static void add() { /* * Pendefinisian var method a, b * var a, b bertipe int * var result tidak mendefisikan, tetapi memanggil */ int a = 10; //pendefunisian var a bertipe int int b = 11; //pendefunisian var b bertipe int /* * menjumlahkan nilai a dan b * Hasinya ditampung di var result */ result = a + b; }
[if-unpas] 2010 @author : Hendra Komara, ST.
Page 5
Modul 3, Praktikum : Algoritma dan Pemrograman 1
/* * Method main adl awal eksekusi program * Method main harus dituliskan seperti ini * Memiliki satu parameter dengan nama args dan bertipe String[] * Merupakan method yang tidak mengembalikan nilai */ public static void main(String[] args) { //Awal Eksekusi Program add(); //instruksi memanggil method add() show(); //memanggil method show() } } 7. 8. 9.
2.
Simpan dengan menggunakan shortcut Ctrl+S, jika tidak ada error ( selajutnya (*Pengamatan) Pilih menu Run | Run As | Java Application (*Pengamatan) Maka akan tampil : Hasil adalah : 21
) maka bisa dilakukan instruksi
Latihan 2 Instruksi : 1. Pastikan project nrp anda modul2 terpilih 2. Klik kanan pada paket ap1.prak. modl2.nrp1040xxx 3. Buat class baru, klik kanan di package ap1.prak. modl2.nrp1040xxx pilih new | class | beri nama DemoSeparator | klik button finish 4. Kemudian ketikkan source dibawah ini di editornya :
/** * @purpose Menunjukan fungsi Separator dan Komentar * @copyright Hendra Komara, ST. * @author Hendra Komara, ST. * @contact @komarahendra * @version 1.0 */ package ap1.prak.modl2.nrp1040999; import java.util.Date; //definisi import abaikan dahulu /* * Nama Kelas DemoSeparator * Memilki empat var milik kelas, yaitu a, nama, alamat, larik * Memiliki empat buah yaitu add(), viewDate(), looping() * Kelas ini tidak bisa di running karena tidak ada method main(String[] arg) */ public class DemoSeparator { //awal blok kelas static int a; // Penggunaan Semi-colon static String nama, alamat; // koma sebagai pemisah urutan identifier static int[] larik = { 1, 2, 3 };//Menghimppun nilai otomatis pada array public static void add(int x, int y){//Kurung bukatutup mnghimpun parameter int result = x + (y + 2); // Kurung buka-tutup mengatur alur int ambilArray = larik[3]; // kurung siku memberikan nilai array } public static void viewDate() { System.out.println(new Date());// titik sbg pemisah method dar var ref } [if-unpas] 2010 @author : Hendra Komara, ST.
Page 6
Modul 3, Praktikum : Algoritma dan Pemrograman 1
public static void looping() { for (int i = 0, n = 0; i < 5; i++) { System.out.println(i); //menampilkan kelayar nilai var i } // kurawal mendefinisikan blok program for }// blok method }// blok kelas 5. 6.
3.
Simpan dengan menggunakan shortcut Ctrl+S, jika tidak ada error ( ) maka bisa dilakukan instruksi selajutnya (*Pengamatan) Perhatikan dan pahami semua komentar program di atas yang menjekaskan semua fungsi separator
Latihan 3 1. 2. 3. 4.
Pastikan project nrp anda modul2 terpilih Klik kanan pada paket ap1.prak. modl2.nrp1040xxx Buat class baru, klik kanan di package ap1.prak. modl2.nrp1040xxx pilih new | class | beri nama DemoIncrement | klik button finish Kemudian ketikkan source dibawah ini di editornya :
package ap1.prak.modl2.nrp1040999; public class DemoIncrement { static int result; public static void preFiks(){ int a = 1; int b = 10; System.out.println("a sebelum increment : "+a); //var result adalah var milik kelas result = ++a + b; //aa++ adal postfiks System.out.println("a sesudah increment : "+a); System.out.println("result : "+result); } public static void postFiks(){ //var a dan b berbeda dengan a dan b di method prefiks() int a = 1; int b = 10; System.out.println("a sebelum increment : "+a); //var result adalah var milik kelas result = a++ + b; //aa++ adal prefiks System.out.println("a sesudah increment : "+a); System.out.println("result : "+result); } public static void main(String[] args) { System.out.println("Prefiks:"); preFiks(); System.out.println(); System.out.println("Postfiks:"); postFiks(); } } 5.
Simpan dengan menggunakan shortcut Ctrl+S, jika tidak ada error ( selajutnya
[if-unpas] 2010 @author : Hendra Komara, ST.
) maka bisa dilakukan instruksi Page 7
Modul 3, Praktikum : Algoritma dan Pemrograman 1
6. 7.
(*Pengamatan) Pilih menu Run | Run As | Java Application (*Pengamatan) Maka akan tampil pada konsole : Prefiks: a sebelum increment : 1 a sesudah increment : 2 result : 12 Postfiks: a sebelum increment : 1 a sesudah increment : 2 result : 11
TUGAS: 1. Buat sebuah project baru dengan nama TugasModul2. 2. Buat sebuah package dengan nama tugasap1.modul2.[nrp anda] 3. Pada package tersebut Anda buat class untuk menangani permasalahan tentang provider kartu telepon genggam. Misalnya XL,kartu AS,IM3, dll. Silahkan tentukan : - Nama providernya. Misalnya kartu AS - Jenisnya. Misalnya GSM. - Biaya telepon ke provider yang sama. - Biaya telepon ke provider yang berbeda. - Biaya sms ke provider yang sama. - Biaya sms ke provider yang berbeda. 4. Tentukan variable apa saja yang diperlukan. 5. Buat penyelesaian permasalahan per method. Misalnya : untuk nama provider buat method public static void namaProvider(){…}.
BEKERJA KERASLAH HARI INI UNTUK DIRI SENDIRI, ESOK HARI ORANG LAIN AKAN BEKERJA KERAS UNTUK KITA.
[if-unpas] 2010 @author : Hendra Komara, ST.
Page 8