Langsung ke konten utama

TUGAS 1 PEMROGRAMAN BERORIENTASI OBJEK (B) - Latihan Bab 8.1 - 8.6

Time Class Study



Di sini terdapat dua class, yaitu Waktu1 dan TesWaktu1. Class Waktu1 menunjukkan waktu dalam sehari. Class TesWaktu1 adalah pengaplikasian class yang method main-nya membuat satu object dari class Waktu1 dan memanggil method tersebut. Dua class ini harus dideklarasikan di file terpisah karena keduanya merupakan public class.

Source code Waktu1.java:

Source code TesWaktu1.java:

Dan outputnya adalah:


Controlling Access to Member

Tujuan utama public method adalah untuk menyajikan service yang diberikan class kepada client. Client tidak perlu tahu bagaimana class menyelesaikan tugasnya. Untuk alasan ini, private variable dan private method tidak bisa diakses client. Berikut merupakan contoh bahwa anggota private class tidak bisa diakses dari luar class.

Source code TesAksesMember.java:

Saat di-compile, akan mengalami error seperti ini:

Referring to the Current Object's Member with the this Reference

Setiap object bisa mengakses reference ke object itu sendiri dengan this. Kita juga bisa menggunakan this secara eksplisit di non-static method. Berikut merupakan penggunaan this reference secara implisit maupun eksplisit.

Source code TesThis.java:

Output:



Time Class Case Study: Overloaded Constructors

Selanjutnya akan ditampilkan class dengan beberapa overloaded constructor yang bisa menginisialisasi object dari class dalam beberapa cara. Cara melakukan overload constructor adalah dengan memberi beberapa deklarasi constructor dengan signature berbeda.

Source code Waktu2.java:

Default and No-Argument Constructors

Kemudian adalah penggunaan overloaded constructor dari class Waktu2. Baris 11 memanggil no-argument constructor. Baris 12 memanggil single-argument constructor. Baris 13 memanggil two-argument constructor. Baris 14 memanggil no-argument constructor. Baris 15 memanggil single-argument constructor yang me-reference baris 33 - 36 pada class Waktu2. Dari situ menunjukkan String dari masing-masing object Waktu2 untuk mengonfirmasi bahwa object terinisialisasi dengan tepat. Baris 38 mencoba untuk menginisialisasi t6 dengan membuat object Waktu2 baru dan diberi tiga value invalid.

Source code TesWaktu2.java:

Output:

Setiap class harus memiliki setidaknya satu constructor. Jika tidak memberikan deklarasi class, compiler akan membuat default constructor yang tidak mengambil argumen apapun ketika dipanggil. Default constructor menginisialisasi variable ke initial/default value.

Jika mendeklarasi constructor, compiler tidak akan membuat default constructor. Dalam kasus ini, kita harus mendeklarasi no-argument constructor jika initial default dibutuhkan. Seperti default constructor, no-argument constructor dipanggil dengan kurung kosong / "()".

Sumber: Java - How to Program 9th Edition (Deitel)

Komentar

Postingan populer dari blog ini

ETS REKAYASA KEBUTUHAN (A) - GoToko

Pada Evaluasi Tengah Semester (ETS) kali ini melakukan analisis kebutuhan aplikasi GoToko . Sebelum kita menganalisis lebih jauh tentang GoToko, kita perlu mengetahui terlebih dahulu apa saja kebutuhan yang harus digali untuk sebuah aplikasi perangkat lunak. Kebutuhan Fungsional Kebutuhan fungsional adalah kebutuhan dari penggunaan software yang harus dibangun oleh developer ke dalam produk agar pengguna dapat menyelesaikan tugas mereka, sehingga memenuhi persyaratan bisnis. Kebutuhan fungsional menyatakan apa yang harus dilakukan oleh sistem. Kebutuhan fungsional juga sangat bergantung dari jenis perangkat lunak, pengguna sistem, dan jenis sistem yang perangkat lunak tersebut gunakan. Kebutuhan Non-Fungsional Kebutuhan non fungsional merupakan kebutuhan yang menggambarkan bagaimana sistem berkerja ke depannya.  Kebutuhan non-fungsional menjelaskan tentang constraint atau standar yang harus dipatuhi oleh sistem. Kebutuhan non-fungsional juga mendefinisikan karakteristik dari kuali...

EAS REKAYASA KEBUTUHAN (A) - Aplikasi Pemesanan Gedung Acara

Pada Evaluasi Akhir Semester (EAS) kali ini melakukan analisis kebutuhan aplikasi  Pemesanan Gedung Acara . Sebelum kita menganalisis lebih jauh tentang aplikasi ini, kita perlu mengetahui terlebih dahulu apa saja kebutuhan yang harus digali untuk sebuah aplikasi perangkat lunak. Kebutuhan Fungsional Pengguna dapat melakukan registrasi akun. Pengguna dapat melakukan perubahan detail akun. Pengguna dapat melakukan pencarian gedung acara berdasarkan kata kunci tertentu. Pengguna dapat melihat detail gedung acara. Pengguna dapat memberikan review kepada gedung acara yang pernah dipesan. Pengguna dapat melakukan transaksi pemesanan gedung acara via e - wallet ataupun e - banking . Pengguna dapat melihat daftar riwayat transaksi pemesanan gedung. Pengguna dapat membatalkan transaksi pemesanan gedung. Pengguna dapat melihat status transaksi pemesanan gedung. Pengguna dapat melihat promo penyewaan gedung. Pengguna dapat menghubungi customer service yang menjadi penanggungjawab tiap venue...

TUGAS 7 PEMROGRAMAN BERORIENTASI OBJEK (B) BAGIAN I - Login Panel

  Tugas kali ini sedikit memodifikasi aplikasi LoginPanel dengan implementasi GUI dengan komponen AWT dan Swing milik Bapak Fajar Baskoro dan disadur dari link berikut . Aplikasi ini merupakan aplikasi sederhana untuk melakukan proses login. Username dan password telah di-set sebelumnya pada aplikasi, sehingga jika salah satu inputan entah username atau password salah, maka akan muncul "Login Denied!". Jika benar, akan memunculkan "Login Granted!". Ada 1 class yang dipakai dalam aplikasi ini: Login , sebagai class untuk melakukan proses login serta pengecekan username dan password. Lalu, aplikasi ini juga menggunakan beberapa library/package: Java.awt.* , untuk proses inputan dalam sebuah program yang telah dijalankan. Java.awt.event.* , untuk proses deklarasi dari class event yang berisi komponen program yang digunakan untuk mengambil semua file dari package event pada java.awt. Java.awt.swing.* , untuk mendeklarasikan sebuah komponen grafis dengan perintah yang di...