Tugas 2 PBO C

 Oktober 11, 2020

Nama : Dewangga Dharmawan

NRP : 05111940000029

Dosen : Fajar Wijaya


Tugas 2 PBO C

  • Program membuat biodata (Biodata orang fiksi)
  • Mempelajari Bab 8 Java How To Program dari 8.1 sampai 8.6 (Semuanya merupakan Time Class)

 

 Biodata

 



Dalam program ini, ditampilkan biodata sebagian saya. Saya perhatikan bagian println dan membangingkannya dengan print, yang saya temukan bahwa println membuat string lalu enter tanpa menggunakan '\n'. Jenis class dan fungsi di dalamnya bernama public, yang mana setelah membaca berbagai sumber, berarti bisa diakses dari class apapun di dalam suatu project.

 Time Class

Time1

 

Saat kulihat source codenya Time1, saya melihat batasan dari jam, menit, dan detik di dalam public void di dalam public class dan string-string yang menampilkan waktu dalam format 24 jam dan 12 jam. Lalu, saya melihat bahwa jika rentang jam, menit, dan detik melebihi batasnya, programnya akan menampilkan string berupa waktunya tidak dalam rentangan (Dalam program yang kuketik, stringnya saya modifikasi).

Lalu ada public void setTime, yang mana jika dari class lain memasukan waktu ke dalam pemanggilan fungsi, maka akan dilihat apakah waktunya termasuk dalam rentang sebelum ditampilkan ke dalam fungsi string setelah itu. Void public yang berisikan string merupakan sebuah fungsi yang akan digunakan pada class Time1Test untuk menampilkan waktu dalam dua format tersebut (24 dan 12).

Dari classnya, saya awalnya berusaha mencari kenapa Time1 tidak bisa langsung run. Lalu, saya menemukan bahwa harus ada class seperti Time1Test untuk melakukan run karena Time1Test memiliki input yang akan dimasukkan.

 Time1Test



Dari sourcecodenya, ada urutan input dari yang pertama dimana tidak ada input, input valid, dan input invalid. Tidak ada input berarti waktu yang ditampilkan adalah tengah malam (00.00 dalam format 24 jam, 12 AM dalam format 12 jam). Input valid adalah input yang masih berada di dalam rentang (0-23 untuk jam, 0-59 untuk menit dan detik), jadi saya masukan waktu pada saat saya lahir, menurut apa yang tertera di akte kelahiranku dan detiknya hanya sekedar perkiraan (15:40:27). Waktu kelahiranku juga akan hasilnya berbeda antara kedua format. Yang terakhir adalah input yang tidak valid, yaitu input yang melebihi rentangan waktu, misalnya 999:999:999.

 

Sebagai tambahan, saya mencoba sourcecode untuk mengetes apakah public bisa mengakses data dari variabel private. (Tidak). Bisa dilihat bahwa ditemukan tiga error yang menandakan akses menuju variabel private.

ThisTest


Untuk class ThisTest, saya menemukan bahwa ada dua class di dalamnya. Setelah saya membaca buku Java How to Program, saya melihat bahwa untuk dua class, diperlukan referensi ‘this’, yang mana jika digabungkan dengan variable untuk mengetahui variabel mana yang harus dimanipulasi. Penggunaan ‘this’ dapat digunakan menjadi 2 : explisit dan implisit. Explisit digunakan jika menampilkan this dengan suatu fungsi atau variabel sementara implisit tidak menampilkan this. Penggunaan this untuk kasus ini tidak harus karena tidak ada variabel lokal yang menutupi variabel class.

 

Time2




Sourcecode ini, Time2, memiliki banyak fungsi public, yang diantaranya bernama konstruktor yang teroverload, yang memberikan cara tertentu untuk menginisalisasi objek Time2. Konstruktor-konstruktor ini melakukan konstruktor yang kelima, yang akan memanggil setTime untuk memastikan waktu yang dimasukan masih berada di dalam rentangan, menyesuaikan urutan-urutan konstruktor pada parameternya. Setiap konstruktor akan melakukan fungsi untuk menampilkan jam berapa dalam kedua format sebelumnya, dari yang paling atas sampai yang kelima.

 

Time2Test

 

Untuk menjalankan class This2, maka diperlukan juga class This2Test, yang mana mengisikan input seperti yang tertulis di This2Test, untuk masing-masing konstruktor. Diketahui juga bahwa semua class memiliki setidaknya satu konstruktor, dan diawali dengan konstruktor tanpa argumen.

 

Komentar

Postingan populer dari blog ini

Tugas 5 PBO C Tech Support System

Tugas 10 PBO C Text Editor

Tugas 3 PBO C Jam Masjid