PROGRAMMING #10 : Java Programming for Programmer - Classes and Objects (PART 5) | [BAHASA]

in #indonesia7 years ago

RESOURCES TO LEARN JAVA

Pada artikel ini merupakan lanjutan dari artikel sebelumnya yaitu Java Programming for Programmer - Classes and Objects (PART 4). Masih dalam topik yang sama, dimana saya akan membahas mengenai kelas dan objek. Langsung saja pada pokok pembahasan berikut ini.

Metode SetWaktu pada Kelas Waktu2

Metode setWaktu (baris 45-50) memanggil setJam (baris 53-59), setMenit (baris 62-68), dan setDetik (baris 71-77), yang memastikan bahwa nilai yang disuplai untuk jam berapa dalam rentang waktu 0 sampai 23 dan nilai-nilai untuk menit dan detik berada dalam rentang 0 sampai 59. Jika suatu nilai berada di luar rentang yang ditentukan, maka setiap metode ini akan melempar eksepsi IllegalArgumentException (baris 58, 67, dan 76), yang mengindikasikan nilai mana yang berada diluar rentang yang diizinkan.

Catatan: Metode-metode Set dan Get

Metode-metode set dan get dipanggil pada banyak tempat di dalam kelas. Metode setWaktu memanggil metode-metode setJam, setMenit, dan setDetik pada baris 47-49, dan metode-metode toUniversalString dan toString memanggil metode-metode getJam, getMenit, dan getDetik pada baris 93 dan pada baris 100-101. Pada setiap kasus, metode-metode tersebut bisa saja mengakses data private secara langsung tanpa perlu memanggil metode-metode set dan get. Tetapi, pertimbangkan apabila diinginkan untuk mengubah representasi waktu dari tiga nilai int (memerlukan 12 byte memori) menjadi satu nilai int tunggal yang merepresentasikan jumlah total detik setelah tengah malam (memerlukan hanya byte memori).

Jika dilakukan perubahan semacam itu, maka hanya tubuh-tubuh metode yang mengakses data private secara langsung yang perlu dimodifikasi, dalam kasus ini hanya metode-metode set dan get untuk jam, menit, dan detik saja yang perlu diubah. Anda tidak perlu memodifikasi tubuh metode-metode setWaktu, toUniversalString, atau toString karena ketiganya tidak mengakses data secara langsung. Merancang kelas dengan gaya seperti ini akan mereduksi kemungkinan kerusakan program ketika dilakukan pengubahan implementasi kelas.

Penggunaan Konstruktor-konstruktor Kelas Waktu2

Kelas ujiWaktu2 (kode 1.6) memanggil konstruktor-konstruktor ter-overload Waktu2 (baris -12 dan baris 40). Baris 8 memanggil konstruktor tanpa argumen (kode 1.5, baris 12-15). Baris 9-13 pada program mendemonstrasikan pelewatan argumen kepada konstruktor-konstruktor Waktu2 yang lain. Baris 9 memanggil konstruktor satu argumen yang menerima suatu nilai int pada baris 18-21 pada kode 1.5. Baris 10 memanggil konstruktor tiga argumen pada baris 30-33 pada kode 1.5. Baris 12 memanggil konstruktor satu argumen yang mengambil suatu objek Waktu2 pada baris 34-42 pada kode 1.5. Selanjutnya, aplikasi menampilkan representasi String atas setiap objek Waktu2 untuk menegaskan penginisialisasian dilakukan secara benar. Baris 40 mencoba untuk menginisialisasi t6 dengan menciptakan suatu objek Waktu2 yang baru dan melewatkan tiga nilai tidak valid untuk menginisialisasi jam, maka akan terjadi eksepsi IllegalArgumentException. Program akan menangkap eksepsi ini pada baris 42 dan menampilkan pesan error yang menghasilkan baris terakhir pada keluaran program.

Kode 1.6

Output:

Catatan: Metode Set dan Get

Seperti yang anda ketahui, bidang-bidang data private suatu kelas hanya bisa dimanipulasi oleh metode-metode yang di deklarasikan didalam kelas tersebut. Manipulasi bisa berupa pengubahan rekening saldo konsumen bank (misalnya, variabel contoh private suatu kelas AkunBank) oleh suatu metode hitungBunga. Beberapa kelas sering kali menyediakan beberapa metode public untuk mengizinkan klien kelas set (menugaskan nilai kepada) atau get (mendapatkan nilai dari) variabel-variabel contoh private.

Dalam penamaan, suatu metode yang menugaskan nilai-nilai kepada variabel contoh dari kelas lajuBunga biasanya diberikan nama setLajuBunga dan suatu metode yang mendapatkan nilai dari variabel contoh kelas lajuBunga umumnya diberikan nama getSukuBunga. Metode set umumnya disebut dengan mutator, sedangkan metode get umumnya dipanggil dengan aksesor.

To be continued...

Regards alfarisi,


INDONESIAN STEEMIT COMMUNITY

Sort:  

Mantabs dek bro

Terima kasih banyak bang brooo @kakilasak haahhahah

Coin Marketplace

STEEM 0.16
TRX 0.16
JST 0.031
BTC 58925.39
ETH 2498.15
USDT 1.00
SBD 2.48