Kita akan gunakan projek naive-ticket-machine. Mesin mengeluarkan tiket dengan harga tetap.
Bagaimana cara menentukan harga?
Bagaimana ‘uang’ dimasukkan ke dalam mesin? Bagaimana mesin mencatat banyaknya uang yang telah dimasukkan?
Ticket machines – an internal view
Berinteraksi langsung dengan objek, akan memberikan petunjuk mengenai perilakunya. Telusuri lebih dalam untuk melihat bagaimana perilaku tersebut diimplementasikan. Java class yang akan dibuat merupakan internal view dari objek.
Basic class structure
public class TicketMachine { Inner part of the class omitted. }
public class ClassName { Fields Constructors Methods }
The outer wrapper of TicketMachine
The contents of a class
Fields/medan/keadaan
Fields menyimpan nilai dari suatu objek. Juga dikenal sebagai instance variables. Pd BlueJ, gunakan pilihan Inspect utk menampilkan field dr suatu objek. Fields mendefinisikan keadaan suatu objek.
public class TicketMachine { private int price; private int balance; private int total; Constructor and methods omitted. }
visibility modifier
type
variable name
private int price;
Constructors
Method Constructors menginisialisasi suatu objek. Namanya haruslah sama dengan nama class. Menyimpan nilai awal dari field. Bisa saja memiliki eksternal parameter untuk memberi nilai awal pada field.
public TicketMachine(int ticketCost) { price = ticketCost; balance = 0; total = 0; }
Passing data via parameters
Assignment
Suatu nilai disimpan dalam field (dan variabel lainnya) via assignment statements:
variable = expression; price = ticketCost;
Satu variabel menyimpan satu nilai, jadi nilai sebelumnya akan hilang.
Methods
Suatu Method merupakan implementasi perilaku dari objek. Secara umum ada 3:
Method constructor: digunakan untuk mencipta objek dan memberi nilai awal pada objek yang dicipta Method accessor Method mutator
Struktur method terdiri dari bagian header dan body.
Accessor methods
Method Accessors: mengembalikan informasi mengenai objek. Bagian header mendefinisikan method’s signature. public int getPrice() Bagian body melingkupi semua method’s statements. Terdapat statement return pada body.
Class terdiri dari fields, constructors dan methods. Fields menyimpan nilai yang menentukan keadaan suatu objek. Constructors mencipta objek. Methods memberikan implementasi perilaku dari objek.
Review
Fields, parameters dan variabel lokal, semuanya merupakan variabel. Fields ‘hidup’ selama objek tersebut hidup. Parameters digunakan untuk menerima nilai pada constructor atau method. Variabel lokal digunakan sebagai tempat penyimpanan sementara.
Review
Objects dpt memiliki pilihan via conditional (if) statements. A true or false test memungkinkan hanya satu aksi yang dipilih dari beberapa alternatif pilihan.