Langsung ke konten utama

Unggulan

Tugas 3 - Aplikasi Selamat Ulang Tahun

Nama : Christoforus Indra Bagus Pratama NRP : 5025231124 Mata Kuliah : Pemrograman Perangkat Bergerak (C) Tanggal : 11 Maret 2026 Pertemuan : 3 Langkah Pengerjaan 1. Menyiapkan Aplikasi 2. Menambah Elemen Teks Baru dan Mengubah Ukuran Font 3. Menambahkan Elemen Teks Lainnya 4. Mengatur Elemen Teks dalam Baris dan Kolom 5. Menambahkan Ucapan ke Aplikasi Ringkasan Jetpack Compose adalah toolkit modern untuk membangun UI Android. Jetpack Compose menyederhanakan dan mempercepat pengembangan UI di Android dengan lebih sedikit kode, alat yang canggih, dan API Kotlin yang intuitif. Antarmuka pengguna (UI) aplikasi adalah tampilan visual yang Anda lihat di layar: teks, gambar, tombol, dan berbagai jenis elemen lainnya. Fungsi composable adalah elemen penyusun dasar Compose. Fungsi composable adalah fungsi yang mendeskripsikan beberapa bagian UI Anda. Fungsi composable dianotasi menggunakan anota...

Tugas Pertemuan 4 - Interaksi Objek (Clock Display)

Tugas Pertemuan 4 - Clock Display

Berikut merupakan program digital untuk menampilkan waktu menggunakan konsep pemrograman berorientasi objek (OOP) di Java. Program ini menggunakan dua kelas utama, yaitu ClockDisplay dan NumberDisplay, untuk membentuk simulasi jam digital 24 jam dengan format "HH". Kelas ClockDisplay berfungsi sebagai pengelola utama yang menangani logika penambahan jam dan menit serta pembaruan tampilan waktu secara keseluruhan. Sedangkan, kelas NumberDisplay bertanggung jawab untuk menangani penghitungan nilai numerik (jam dan menit) dengan pembatasan nilai tertentu, seperti 24 untuk jam dan 60 untuk menit.

Source Code : Link Github

Kelas NumberDisplay


Penjelasan :

NumberDisplay adalah kelas yang menangani penghitungan dan penampilan angka, khususnya pada jam dan menit. Berikut adalah fungsi dari kelas ini:
Atribut :

  • nilai : Menyimpan nilai saat ini (seperti jam atau menit).
  • batas : Menyimpan batas maksimum angka (24 untuk jam, 60 untuk menit).
Metode utama :
  • increment() : Menambah nilai yang disimpan. Jika nilai mencapai batas, ia akan kembali ke 0. Ini berguna untuk jam (dari 23 ke 0) dan menit (dari 59 ke 0).
  • getNilai() : Mengembalikan nilai saat ini.
  • setNilai(int nilaiBaru) : Mengatur nilai ke nilai baru.
  • getNilaiTampilan() : Mengembalikan nilai dalam bentuk string, biasanya dalam format dua digit (misalnya, "08" bukan "8").
Cara Kerja : Misalnya, untuk menampilkan menit : Jika menit saat ini adalah 59, ketika metode increment() dipanggil, menit akan menjadi 0 dan juga menyebabkan jam bertambah satu.

Kelas ClockDisplay

Penjelasan :

Kelas ClockDisplay merupakan kelas utama yang menggabungkan dua objek NumberDisplay untuk merepresentasikan jam dan menit pada sebuah jam digital.
Atribut :

  • jam : Objek NumberDisplay yang menyimpan nilai jam (dari 0 hingga 23).
  • menit : Objek NumberDisplay yang menyimpan nilai menit (dari 0 hingga 59).
  • stringTampilan : Sebuah string yang menyimpan tampilan waktu dalam format "HH".
Konstruktor : Konstruktor pertama membuat objek ClockDisplay dengan jam diatur ke 00:00. Konstruktor kedua memungkinkan pengguna menentukan jam dan menit awal secara manual.
Metode utama :
  • detikWaktu() : Metode ini memajukan menit pada objek ClockDisplay. Ketika menit mencapai 60 (menjadi 0), metode ini juga akan memajukan jam. Jadi, metode ini seperti pengatur waktu yang menambah waktu setiap menit.
  • aturWaktu(int jam, int menit) : Mengatur waktu pada objek ClockDisplay sesuai dengan parameter jam dan menit yang diberikan.
  • ambilWaktu() : Mengembalikan waktu saat ini dalam format "HH" sebagai string, yang dapat digunakan untuk ditampilkan ke pengguna.
  • perbaruiTampilan() : Metode ini menggabungkan nilai dari objek jam dan menit menjadi sebuah string dengan format "HH" yang diperbarui setiap kali waktu berubah.

Cara Kerja : Saat objek ClockDisplay dibuat, ia akan memulai dengan nilai waktu default (00:00) atau waktu yang diatur oleh pengguna. Setiap kali metode detikWaktu() dipanggil, menit akan bertambah satu. Jika menit mencapai 60, menit akan kembali ke 0 dan jam akan bertambah satu. Waktu yang diperbarui akan disimpan sebagai string di stringTampilan dan bisa diakses menggunakan metode ambilWaktu().
Secara keseluruhan, objek NumberDisplay digunakan untuk menangani penambahan jam dan menit, sementara ClockDisplay mengelola tampilan dan pembaruan waktu pada jam digital.

Uji Coba di BlueJ

Abstraksi Diagram Objek:

Kode NumberDisplay :
Kode ClockDisplay :
Diagram kelas dan relasi :
Membuat objek baru :
Hasil :

Komentar

Postingan Populer