(2) jobsheet class dan object 1 - ifrozi.files.wordpress.com · jobsheetpraktikum(oop((v1.0)(!...

14
Jobsheet Praktikum OOP (v1.0) Imam Fahrur Rozi, PSMI Polinema 2 – Class dan Object (1) PENDAHULUAN Konsep yang paling mendasar dari Object Oriented Programming adalah Class dan Object. Objek merepresentasikan suatu objek nyata yang ditemukan dalam suatu sistem. Sedangkan Class merepresentasikan rancangan/blueprint/template/desain untuk membuat objek. Jadi bisa dikatakan bahwa Objek sebenarnya merupakan hasil bentukan nyata (instance) dari suatu Class. Ketika membuat Class, di dalamnya dideklarasikan Atribut dan Method yang dimiliki oleh Class tersebut. Atribut merupakan data/property/elemen/komponen yang dimiliki oleh Class. Sedangkan method merupakan fungsi/behavior/perilakau yang bisa dikerjakan oleh Class tersebut. Struktur dari suatu Class digambarkan dalam Class Diagram. NamaClass namaAtribut1: tipeData namaAtribut2: tipeData namaMethod1(): tipeData namaMethod2(): tipeData Untuk membuat suatu Class, digunakan kata kunci class dan diikuti dengan nama Class yang akan dibuat. class NamaClass{ //deklarasi atribut //deklarasi method } Seperti diulas di bagian sebelumnya, bahwa Class di dalamnya terdapat Atribut dan Method. Untuk deklarasi Atribut dan Method harus dilakukan di dalam tubuh Class. Format deklarasi atribut adalah sebagai berikut: accessModifier tipeData namaAtribut; Sedangkan format deklarasi method adalah sebagai berikut: accessModifier tipeData namaMethod(tipeData argumen1, tipeData argumen2, …..){ //isi method //isi method } Untuk Access Modifier tidak dibahas pada modul ini, melainkan akan dibahas pada modul berikutnya (Class dan Object bag. 2). Contoh deklarasi atribut:

Upload: vuongtuong

Post on 07-Mar-2019

273 views

Category:

Documents


8 download

TRANSCRIPT

Jobsheet  Praktikum  OOP  (v1.0)    

Imam  Fahrur  Rozi,  PSMI  -­‐  Polinema  

2  –  Class  dan  Object  (1)  PENDAHULUAN  

Konsep   yang   paling   mendasar   dari   Object   Oriented   Programming   adalah   Class   dan   Object.   Objek  merepresentasikan   suatu   objek   nyata   yang   ditemukan   dalam   suatu   sistem.   Sedangkan   Class  merepresentasikan   rancangan/blueprint/template/desain   untuk   membuat   objek.   Jadi   bisa   dikatakan  bahwa  Objek  sebenarnya  merupakan  hasil  bentukan  nyata  (instance)  dari  suatu  Class.  Ketika  membuat  Class,   di   dalamnya   dideklarasikan   Atribut   dan   Method   yang   dimiliki   oleh   Class   tersebut.   Atribut  merupakan  data/property/elemen/komponen   yang  dimiliki   oleh  Class.   Sedangkan  method  merupakan  fungsi/behavior/perilakau   yang   bisa   dikerjakan   oleh   Class   tersebut.   Struktur   dari   suatu   Class  digambarkan  dalam  Class  Diagram.  

NamaClass  namaAtribut1:  tipeData  namaAtribut2:  tipeData  

namaMethod1():  tipeData  namaMethod2():  tipeData  

 

Untuk   membuat   suatu   Class,   digunakan   kata   kunci   class   dan   diikuti   dengan   nama   Class   yang   akan  dibuat.    

class  NamaClass{  

  //deklarasi  atribut     //deklarasi  method  }  

Seperti   diulas   di   bagian   sebelumnya,   bahwa   Class   di   dalamnya   terdapat   Atribut   dan   Method.   Untuk  deklarasi   Atribut   dan  Method   harus   dilakukan   di   dalam   tubuh   Class.   Format   deklarasi   atribut   adalah  sebagai  berikut:  

  accessModifier    tipeData    namaAtribut;  

Sedangkan  format  deklarasi  method  adalah  sebagai  berikut:  

  accessModifier    tipeData    namaMethod(tipeData  argumen1,  tipeData  argumen2,  …..){  

  //isi  method     //isi  method  }  

Untuk  Access  Modifier   tidak  dibahas  pada  modul   ini,  melainkan   akan  dibahas  pada  modul   berikutnya  (Class  dan  Object  bag.  2).  Contoh  deklarasi  atribut:  

Jobsheet  Praktikum  OOP  (v1.0)    

Imam  Fahrur  Rozi,  PSMI  -­‐  Polinema  

  int  nim;     String  nama;     float  luas;  Contoh  deklarasi  method:  

  void  tampilData(){       System.out.println  (“Hello  World!!”);  

}    int  tambah(int  a,  int  b,  int  c){     return  a+b+c;  }  

 

Setelah  Class  dibuat,  langkah  selanjutnya  adalah  membuat  Object.  Proses  pembuatan  Object  dari  suatu  Class  disebut  instansiasi.  Format  dasar  instansiasi  adalah  sebagai  berikut:  

  NamaClass  namaObject  =  new  NamaClass();  

Proses   instansiasi   ditandai   dengan   kata   kunci   new   Setelah   dilakukan   proses   instansiasi,   maka   objek-­‐objek  yang  terbentuk  sudah  siap  untuk  diolah  atau  diproses  (diakses  atribut  dan  dipanggil  methodnya).  

Catatan:  • Aturan  penamaan  Class  

o Berupa  kata  benda  o Diawali  dengan  HURUF  BESAR  o Jika  terdiri  dari  2  atau  lebih  kata,  tiap  kata  diawali  dengan  HURUF  BESAR  dan  antar  kata  

disambung  tidak  (dipisah)    o Contoh  Mahasiswa,  Dosen,  DosenTetap  dsb  

• Aturan  penamaan  Atribut  o Berupa  kata  benda  o Diawali  dengan  HURUF  KECIL  o Jika   terdiri   dari   2   atau   lebih   kata,   kata   pertama   diawali   HURUF   KECIL   sedangkan   kata  

selanjutnya  diawali  HURUF  BESAR.  Dan  antar  kata  disambung  tidak  (dipisah)  o Contoh  nama,  alamat,  gajiPokok,  tunjanganJabatanTahunan  dsb  

• Aturan  penamaan  Method  o Berupa  kata  kerja  o Diawali  dengan  HURUF  KECIL  o Jika   terdiri   dari   2   atau   lebih   kata,   kata   pertama   diawali   HURUF   KECIL   sedangkan   kata  

selanjutnya  diawali  HURUF  BESAR.  Dan  antar  kata  disambung  tidak  (dipisah)  o Contoh  tambah(),  hitungGajiTotal()  dsb  

• Aturan  penamaan  Objek  o Sama  persis  dengan  aturan  penamaan  Atribut  

 

 

Jobsheet  Praktikum  OOP  (v1.0)    

Imam  Fahrur  Rozi,  PSMI  -­‐  Polinema  

PERCOBAAN  1  :  CLASS  DIAGRAM  

Tujuan:  Mahasiswa  memahami  cara  menggambarkan  desain  klas  menggunakan  Class  Diagram  (Diagram  Klas)  

Prosedur  Percobaan:  

1. Perhatikan  kasus  di  bawah  ini:  Dalam  suatu  sistem   informasi  akademik,   salah  satu  data  yang  diolah  adalah  data  mahasiswa.  Setiap  mahasiswa  memiliki  NIM,  nama,  alamat,   tahun  masuk  dan   IPK.  Setiap  mahasiswa   juga  bisa  menampilkan  data-­‐data  yang  dimilikinya.    

2. Gambarkan  desain  klas  menggunakan  Class  Diagram  dari  kasus  di  atas!  

 

Pertanyaan:  

1. Ada   berapa   klas   yang   bisa   Anda   identifikasi   dari   kasus   tersebut?   Sebutkan   nama   klas   yang  berhasil  Anda  identifikasi  tersebut!  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  

2. Sebutkan   atribut-­‐atribut   yang   dimiliki   oleh   klas   yang   Anda   sebutkan   pada   no.   1,   beserta   tipe  datanya!  

Jobsheet  Praktikum  OOP  (v1.0)    

Imam  Fahrur  Rozi,  PSMI  -­‐  Polinema  

……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..    

3. Sebutkan  method-­‐method  yang  dimiliki  oleh  klas  yang  Anda  sebutkan  di  no.  1,  beserta  tipe  data  method  nya  dan  parameternya  jika  ada!  

……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..    

4. Apakah  gunanya  Class  Diagram?  

……………………………………………………………………………………………………………………………………………………..……………………………………………………………………………………………………………………………………………………..    

 

   

Jobsheet  Praktikum  OOP  (v1.0)    

Imam  Fahrur  Rozi,  PSMI  -­‐  Polinema  

PERCOBAAN  2  :  MENULISKAN  PROGRAM  DARI  CLASS  SEDERHANA  

Tujuan:  

1. Memahami  dan  mengimplementasikan  sintaks  program  dalam  membuat  Class  2. Memahami  dan  mengimplementasikan  sintaks  program  dalam  membuat  Atribut  3. Memahami  dan  mengimplementasikan  sintaks  program  dalam  membuat  Method  4. Memahami  dan  mengimplementasikan  sintaks  program  dalam  membuat  Objek  5. Memahami  dan  mengimplementasikan  sintaks  program  dalam  membuat  method  main()  6. Memahami  dan  mengimplementasikan  sintaks  program  untuk  menampilkan  keluaran  (output)  

Prosedur  Percobaan:  

1. Buka  perangkat  lunak  Text  Editor,  misalnya  Notepad  2. Tuliskan   kode   program   di   bawah   ini!   Kode   di   bawah   ini   merupakan   kode   program   yang  

mengimplementasikan  desain  klas  yang  telah  digambarkan  pada  Class  Diagram  Percobaan  1.  

 3. Setelah  selesai,  pilih  menu  File  >  Save  As  4. Pilih   lokasi  dimana  file   tersebut  akan  disimpan.  Di  File  name   isikan  Mahasiswa.java   (nama  file  

harus  sama  dengan  nama  class).  Di  combo  box  Save  as  type  pilih  Text  Documents  (*.txt).  Dan  di  combo  box  Encoding,  pilih  ANSI.  

5. Setelah  file  tersimpan,  buka  Command  Prompt,  dan  masuk  ke  lokasi  folder  dimana  file  program  HelloWorld.java  tersimpan.    

6. Compile  Mahasiswa.java,  dengan  perintah  javac  Mahasiswa.java  

Jobsheet  Praktikum  OOP  (v1.0)    

Imam  Fahrur  Rozi,  PSMI  -­‐  Polinema  

 7. Jalankan  Mahasiswa,  dengan  perintah  java  Mahasiswa.  Anda  akan  menemukan  Error.    

 8. Buka   kembali   class   Mahasiswa.java,   dan   tambahkan   method   main   ().   Dan   simpan  

perubahannya.  

Jobsheet  Praktikum  OOP  (v1.0)    

Imam  Fahrur  Rozi,  PSMI  -­‐  Polinema  

 9.  Compile  kembali  class  Mahasiswa,  dan  jalankan!  

   

Pertanyaan:  

1. Ada  berapakah  atribut  yang  dimiliki  oleh  klas  Mahasiswa  pada  program  di  atas?  Sebutkan!  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  

Jobsheet  Praktikum  OOP  (v1.0)    

Imam  Fahrur  Rozi,  PSMI  -­‐  Polinema  

……………………………………………………………………………………………………………………………………………………..  2. Ada  berapa  method  yang  dimiliki  oleh  klas  Mahasiswa  pada  program  di  atas?  Sebutkan!  

……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  

3. Pada   program   tersebut,   di  manakah   proses   instansiasi   terjadi   ?   Apakah   kegunaan   dari   proses  instansiasi?  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  

4. Ada   berapa   objek   yang   dibuat   pada   program   tersebut?   Coba   berikan   contoh   untuk  membuat  objek   yang   lain   dari   class   Mahasiswa,   berikan   juga   contoh   untuk   mengakses   atribut   dan  methodnya!  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  

5. Apa  yang  sebenarnya  dilakukan  pada  sintaks  program  mhs1.nim  =  “10986489502”  ?  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  

6. Apa  yang  sebenarnya  dilakukan  pada  sintaks  program  mhs1.tampilData()?  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  

   

Jobsheet  Praktikum  OOP  (v1.0)    

Imam  Fahrur  Rozi,  PSMI  -­‐  Polinema  

PERCOBAAN   3   :   MENULISKAN   METHOD   YANG   MEMILIKI   ARGUMEN/PARAMETER  DAN  MEMILIKI  RETURN  

Tujuan:  

1. Memahami  kegunaan  parameter/argument    2. Memahami  cara  menulis  dan  memanggil  method  yang  memiliki  argument/paremeter  

Prosedur  Percobaan:  

1. Buka  kembali  program  klas  Mahasiswa  yang  sudah  dibuat  pada  Percobaan  2  2. Tambahkan  method   int  hitungTingkat(int   tahunSekarang).  Method   tersebut   digunakan   untuk  

menghitung   selisih   tahun   sekarang   dan   tahun   masuk   dari   suatu   mahasiswa.   Selisih   tersebut  menunjukan  mahasiswa  tersebut  sedang  berada  di  tingkat  berapa.    

 3. Compile  kembali  klas  Mahasiswa  tersebut  dan  jalankan!  Perhatikan  perubahan  hasil  output-­‐nya!  

Jobsheet  Praktikum  OOP  (v1.0)    

Imam  Fahrur  Rozi,  PSMI  -­‐  Polinema  

 

Pertanyaan:  

1. Ada   berapakah   argument   yang   dimiliki   oleh   method   hitungTingkat()   ?   Apa   nama   argument  tersebut?  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  

2. Apa  gunanya  argumen  tersebut  pada  method  hitungTingkat()  ?  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  

3. Argumen  tersebut  akan  mendapatkan  nilai  dari  mana  ?  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  

4. Ambil  kesimpulan  tentang  kegunaan  dari  argumen  dalam  suatu  method  ?  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  

5. Mengapa    method  hitungTingkat()  tersebut  memiliki  return?  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  

6. Ambil   kesimpulan   tentang   kegunaan   dari   kata   kunci   return,   dan   kapan   suatu   method   harus  memiliki  return  ?  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  

Jobsheet  Praktikum  OOP  (v1.0)    

Imam  Fahrur  Rozi,  PSMI  -­‐  Polinema  

……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..    

   

Jobsheet  Praktikum  OOP  (v1.0)    

Imam  Fahrur  Rozi,  PSMI  -­‐  Polinema  

PERCOBAAN   4   :   MENERAPKAN   KONSEP   DASAR   PEMROGRAMAN   (VARIABEL,  PENCABANGAN,   OPERATOR   DSB)   UNTUK  MENYELESAIKAN   PERMASALAHAN   DALAM  SUATU  METHOD  

Tujuan:  

1. Memahami   posisi   konsep   dasar   pemrograman   (variabel,   pencabangan,   perulangan,   operator  dsb)  pada  program    

2. Mereview  kembali  konsep  dasar  pemrograman  

Prosedur  Percobaan:  

1. Buka  kembali  program  klas  Mahasiswa  yang  sudah  dibuat  pada  Percobaan  3  2. Tambahkan  method  konversiIpkKeHuruf()  !  

 3. Compile  kembali  klas  Mahasiswa  tersebut  dan  jalankan!  Perhatikan  perubahan  hasil  output-­‐nya!  

Jobsheet  Praktikum  OOP  (v1.0)    

Imam  Fahrur  Rozi,  PSMI  -­‐  Polinema  

 

Pertanyaan:  

1. Apakah  kegunaan  dari  IF-­‐ELSE  IF-­‐ELSE  ?  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  

2. Bagaimana  format  penulisan  IF-­‐ELSE  IF-­‐ELSE  ?  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  

3. Apakah  kegunaan  dari  masing-­‐masing  operator  &&    dan  <=?  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  ……………………………………………………………………………………………………………………………………………………..  

 

 

 

 

   

Jobsheet  Praktikum  OOP  (v1.0)    

Imam  Fahrur  Rozi,  PSMI  -­‐  Polinema  

LATIHAN  

1. Buatlah  program  dari  Class  Diagram  di  bawah  ini!  

 Penjelasan:  

• Nilai  atribut  hargaDasar  dalam  Rupiah  dan  atribut  diskon  dalam  %  • Method  hitungHargaJual()  digunakan  untuk  menghitung  harga  jual  dengan  perhitungan  

berikut  ini:  harga  jual  =  harga  dasar  –  (diskon  x  harga  dasar)  

• Method   tampilData()   digunakan   untuk   menampilkan   nilai   dari   kode,   namaBarang,  hargaDasar,  diskon  dan  harga  jual.  

 2. Buatlah  program  dari  Class  Diagram  berikut  ini!  

 Penjelasan:  

• Gaji  Total    =  gaji  pokok  +  tunjangan  +  gaji  mengajar  • Aturan  untuk  mentukan  gaji  pokok  :  

o Jika  golongan  3A,  gaji  pokok  =  10000  o Jika  golongan  3B,  gaji  pokok  =  15000  o Jika  golongan  3C,  gaji  pokok  =  20000  o Jika  golongan  3D,  gaji  pokok  =  25000  

• Aturan  untuk  menentukan  tunjangan  :  o Jika  golongan  3A,  gaji  pokok  =  1000  o Jika  golongan  3B,  gaji  pokok  =  1500  o Jika  golongan  3C,  gaji  pokok  =  2000  o Jika  golongan  3D,  gaji  pokok  =  2500  

• Gaji  mengajar  per  jam  =  1000