Tugas PBO 2


DEFINITION CLASS AND THE OTHES

 

FIELD

field merupakan sebuah variabel/atribut  yang didefinisikan oleh Class pada bahasa pemrograman java.
 

 

 

OBJECT


object merupakan  instance/turunan dari sebuah class

Methods


Methods terbagi 2 yaitu:

   Method Accessor

     method accessor adalah Merupakan sebuah metode yang digunakan untuk mengembalikan nilai dari sebuah private field 

    Method Mutators

     method Mutators adalah Merupakan sebuah metode yang digunakan untuk mengubah nilai dari sebuah private field


Constructor

 constructor adalah suatu method yang akan memberikan nilai awal pada saat suatu objek ketika pertama kali dibuat.jika kita melihat pada gambar disamping Ticketmachine merupakan constructor dari class bernama Ticketmachine.

 

 

 

 

 

Class

 class adalah suatu blueprint atau cetakan untuk menciptakan suatu instant dari object. Class juga merupakan grup suatu object dengan kemiripan attributes/properties, behaviour dan relasi ke object lain.

  

 

Parameter

parameter adalah suatu nilai yang dapat diubah/dikembalikan/dipro dalam suatu Method.
pada contoh disamping variabel amount merupakan parameter dari fungsi insertMoney

 

 

Operator Assignment

operator assignment merupakan operator yang digunakan untuk merubah nilai operand sebelah kanan menjadi nilai operand sebelah kiri(dapat digunakan didalam Conditional statement).

 

 

Conditional Statement

Conditional statement merupakan suatu pernyataan program yang akan melakukan sesuatu instruksi jika suatu kondisi yang disyaratkan terpenuhi/ bernilai benar.



Tugas Hal 59-61 Pada buku Objects-First-with-Java-A-Practical-Introduction-Using-BlueJ-David-J-Barnes

 Exercise 2.83

pada Exercise 2.83 kita diminta untuk membuat 2 accesor methods(getAuthor() & getTitle() ) ke class Book ,dimana getAuthor() mengembalikan variable author dan getTitle() mengembalikan variable title.
setelah itu,kita diminta untuk membuat instance terus memanggil method yang ada




 gambar dibawah untuk book3



  Exercise 2.84

 pada Exercise 2.84 kita diminta untuk membuat 2 methods yaitu printAuthor dan printTitle
ke class Book ,dimana method  printAuthor untuk menampilkan variabel author ke layar terminal sedangkan printTitle untuk menampilkan variabel title ke layar terminal.

Exercise 2.85

pada Exercise 2.85 kita diminta untuk membuat sebuah field dengan nama pages dengan tipe int setelah itu dimasukkan kedalam constructor yang sudah ada(bersama dengan author dan title).setelah itu buat sebuah accessor method untuk field pages.

setelah kita mengerjakan soal diatas,masih ada pertanyaan lagi pada Exercise 2.85,apakah pada setiap object Book yang kita buat bersifat kekal(tidak bisa diubah)?jawabannya adalah iya,karena kita telah menetapkan nilai yang ada saat kita membuat instance/object Book tersebut dan kita tidak membuat method yang dapat mengubah isi dari object tersebut(method mutators).

 

 

Exercise 2.86

  pada Exercise 2.86 kita diminta untuk membuat sebuah method bernama printDetails kedalam Class Book.printDetails akan menampilkan author, title, dan pages pada layar terminal(tidak ada format tertentu) 

contoh:

 Title: Robinson Crusoe, Author: Daniel Defoe, Pages: 232 





Exercise 2.87

  pada Exercise 2.87 kita diminta untuk membuat sebuah field dengan tipe String dan nama refNumber setelah itu dimasukkan kedalam Class Book.masukan nilai zero length string ke refNumber,dan masukan refNumber kedalam konstruktor yang ada.setelah itu buat mutator dengan format:

public void setRefNumber(String ref)

isi didalam method mutator tersebut  nilai dari refNumber.setelah itu buat getRefNumber untuk mengecek apakah nilai dari refNumber merupakan nilai dari paramameter ref yang ada di setRefNumber.


 

Exercise 2.88

  pada Exercise 2.88 kita diminta untuk merubah method printDetails dengan memasukan perintah untuk menampilkan reference number(refNumber).jika refNumber bukan merupakan zero length string tampilkan refNumber ke layar terminal.jika refNumber  merupakan zero length string tampilkan "ZZZ".


Exercise 2.89

  pada Exercise 2.89 kita diminta untuk merubah method mutator setRefNumber jika nilai yang dimasukan kedalam  refNumber kurang dari 3 maka nilai dari refNumber tidak berubah,sebaliknya,jika nilai yang  dimasukan kedalam  refNumber lebih dari 3 maka nilai dari refNumber berubah sesuai dengan nilai yang dimasukkan.

Exercise 2.90

  pada Exercise 2.90 kita diminta untuk memasukan sebuah field yaitu borrowed kedalam Book class.setelah itu tambahkan mutator borrow kedalam class tersebut,borrow akan menambah nilai dari borrowed sebesar 1 setiap method borrow dipanggil.setelah itu tambah sebuah method accessor dengan inisial getBorrowed untuk mengembalikan nilai dari borrowed.terakhir ubah printDetails sehingga menampilkan nilai borrowed(tambahkan sedikit kalimat penjelas).

Exercise 2.91

  pada Exercise 2.91 kita diminta untuk memasukan sebuah field bertipe boolean yaitu courseText kedalam Book class.courseText harus diatur nilainya dengan menggunakan sebuah paramater pada constructor yang ada dan nilai dari courseText harus tetap(setelah diubah didalam constructor).setelah itu buat sebuah accessor method dengan nama isCourseText untuk mengembalikan nilai dari courseText.

 

Exercise 2.92

  pada Exercise 2.92 kita diminta untuk membuat sebuah project baru pada BlueJ dengan nama heater-exercise setelah itu ubah deskripsi project(text note yang dilihat didalam diagram BlueJ).buatlah class baru dengan nama Heater yang berisi satu field dengan nama temperature bertipe  double-precision floating point.buat sebuah constructor tanpa parameter,temperature harus di set sebesar 15.0 didalam constructor.buat mutators warmer and cooler yang meningkatkan atau menurunkan nilai dari temperature sebesar 5.0 secara berkala.buat sebuah accessor method untuk mengembalikan nilai temperature

 

Exercise 2.93

  pada Exercise 2.93 kita diminta untuk mengubah Heater class sehingga memiliki tiga double precision floating point field: min, max, dan increment.nilai dari min dan max harus diset oleh parameter yang ada di constructor.nilai dari increment harus diset 5.0 dari dalam constructor.ubah isi dari method warmer dan cooler sehingga mereka menggunakan increment dibandingkan 5.0 .sebelum melanjutkan lebih lanjut pastikan semuanya bekerja seperti sedia kala.

sebeleum mengubah Heater class:

getTemperature()

cooler()+getTemperature()

warmer()+getTemperature()    

 mengubah heater class


setelah mengubah Heater class:



getTemperature()

cooler()+getTemperature()

warmer()+getTemperature()

 


sekarang ubah warmer method sehingga tidak membolehkan nilai dari temperature lebih dari max.sama dengan warmer method,ubah cooler method sehingga tidak membolehkan nilai dari temperature kurang dari min.cek jika class bekerja dengan baik(tidak ada error).


 

sekarang tambahkan method setIncrement yang mengambil nilai dari parameternya dan dimasukan kedalam increment.sekali lagi cek apakah class  berjalan dengan baik(dengan membuat beberapa object pada BlueJ).

 

 

heater1(warmer()) 





heater2(cooler())






 pertanyaannya adalah bagaimana jika nilai dari increment bernilai negatif?
jawabannya ialah method cooler() akan seperti method warmer() yang increment-nya bernilai positif,begitu juga sebaliknya.tentu hal ini tidak diinginkan terjadi.

tambahkan sebuah syarat pada method setIncrement dimana syarat berguna untuk mencegah input nilai negatif pada increment.







Komentar