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

TUGAS 3 PEMROGRAMAN WEB (D) - Warung Tegal

Tugas kali ini membuat website Warung Makan Tegal. Dalam proses pengerjaannya, menggunakan  HTML ,   CSS ,   dan JavaScript serta  VSCode  sebagai  text editor . Di website ini, saya mengaplikasikan penggunaan embed video dari Youtube dan image carousel atau slideshow . Laman website-nya dapat diakses pada  link berikut . Untuk  hosting  web sendiri memakai  Netlify . Konten dari website: Main page , berisi daftar makanan, masakan populer, kontak dari warung tegal, serta menu apa saja yang tersedia di dalam website. Tampilan Website Main page Source Code index.html style.css

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...

ETS PEMROGRAMAN BERORIENTASI OBJEK (B) - Mesin ATM

1. Tuliskan skenario fungsionalitas aplikasi berdasarkan tayangan tersebut! Pada video yang ada, ditampilkan proses setor tunai pada mesin ATM. Jadi, awalnya nasabah memasukkan kartu ATM ke dalam mesin. Lalu, memasukkan nomor pin sebanyak 6 digit sesuai yang telah didaftarkan. Jika pin salah, maka mesin akan meminta mengulangi agar memasukkan pin yang benar. Nah, di mesin ATM ini sendiri ada beberapa fitur yaitu setor tunai, penarikan tunai, dan transaksi lainnya (seperti transfer, pembayaran listrik, dll.). Dalam video, nasabah ingin melakukan proses setor tunai. Perlu diketahui di beberapa mesin, setor tunai ada yang menerima pecahan uang Rp100.000,00 saja, ada juga yang juga menerima Rp50.000,00, di video sepertinya hanya menerima Rp100.000,00. Lalu, juga ada batas maksimal berapa nominal atau jumlah uang yang dimasukkan, di video batasnya adalah 50 lembar. Jika lebih, maka kelebihannya akan dikembalikan oleh mesin. Setelah memasukkan uang ke dalam mesin, mesin akan memproses dan ke...