Disusun Oleh :
Kelompok 8
220170028 – Rika Yulia sari
220170077 – Nur Inayati
TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS MALIKUSSALEH
2023
A. IDE DASAR
Pembuatan jam digital menjadi suatu hal yang menarik dalam pemrograman aplikasi
grafis dengan menggunakan Java. Seiring perkembangan teknologi, aplikasi jam digital telah
menjadi salah satu fitur umum dalam berbagai perangkat elektronik, termasuk komputer dan
ponsel. Oleh karena itu, pembuatan jam digital ini bertujuan untuk memberikan pengalaman
dalam pengembangan aplikasi GUI sederhana dengan menampilkan waktu secara real-time.
Ide dasar di balik pembuatan jam digital ini adalah untuk menciptakan antarmuka
pengguna yang menarik dan informatif. Dengan mengintegrasikan fungsi-fungsi dasar dari
API waktu Java, kita dapat membuat aplikasi yang memberikan informasi waktu dalam
format 24 jam dan 12 jam, disertai dengan tampilan tanggal yang akurat. Dengan adanya
kemampuan untuk menjalankan thread secara terus-menerus, program ini memberikan
tampilan waktu yang selalu terkini, menciptakan aplikasi yang fungsional dan interaktif.
Melalui implementasi ini, diharapkan pembaca dapat memahami konsep dasar dari
pengembangan aplikasi GUI dengan menggunakan Java NetBeans dan penerapan
penggunaan thread untuk memperbarui informasi waktu secara real-time. Selain itu, laporan
ini juga memberikan ide untuk pengembangan selanjutnya, termasuk peningkatan tampilan,
penambahan fitur, dan penyesuaian format waktu yang ditampilkan.
Maka Tujuan Program ini ialah :
• Membuat aplikasi jam digital menggunakan Java Swing. Menampilkan waktu dalam
format 24 jam dan 12 jam beserta tanggal.
• Waktu ditampilkan dalam dua format: 24 jam dan 12 jam dengan AM/PM.
• Program menggunakan SimpleDateFormat untuk memformat waktu dan tanggal.
• untuk format 24 jam dan hh:mm:ss aa untuk format 12 jam dengan AM/PM. Tanggal
diformat dalam format "dd:MM:yyyy".
B. RENCANA DAN RANCANGAN
Rencana Program
• Kode program ini dibuat dalam bahasa pemrograman Java dan menggunakan NetBeans
IDE untuk mempermudah pengembangan.
• Kelas utama yang digunakan adalah JamDigital2, yang merupakan JFrame dan
mengimplementasikan antarmuka Runnable untuk menjalankan thread yang menangani
pembaruan waktu secara real-time.
• Terdapat variabel-variabel untuk menyimpan nilai jam (hour), menit (minute), detik
(second), tahun (year), bulan (month), dan tanggal (day).
• Kode GUI dihasilkan oleh NetBeans IDE dan mencakup label-label untuk menampilkan
jam dalam format 24 jam dan 12 jam, serta label untuk menampilkan tanggal.
Rancangan Program
1. Komponen GUI :
Untuk Komponen yang digunakan terdiri atas :
• jPanel untuk menampung semua komponen seperti; jLabel dan jButton pada Form
Jam Digital
• jLabel1: Label berisi teks "Digital Clock".
• jLabel2: Label berisi teks "Time(24Hours)". Menggunakan variable name timein24
untuk menampilkan waktu dalam format 24 jam
• jLabel3: Label berisi teks "Time(12Hours)". Menggunakan variable name timein12
untuk menampilkan waktu dalam format 12 jam dengan AM/PM.
• jLabel4: Label berisi teks “Date”. Menggunakan variable name date untuk
menampilkan tanggal dengan format “dd:MM:yyyy”.
2. Fungsi- fungsi utama dalam Program :
a. Package dan Komentar Awal
/*
*Click
nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-
default.txt to change this license
* Click
nbfs://nbhost/SystemFileSystem/Templates/GUIForms/JFrame.java to
edit this template
*/
package projectuaskelompok8;
Penjelasan :
• Komentar awal berisi informasi tentang lisensi dan template yang digunakan. Ini
dapat dirubah sesuai kebutuhan.
• Package projectuaskelompok8 digunakan untuk mengorganisir kelas dalam paket
tertentu.
c. Variabel Kelas
int hour, minute, second;
int day, month, year;
String timestr, yearstr;
Penjelasan :
Deklarasi variabel-variabel untuk menyimpan informasi waktu, tanggal, dan
format waktu dalam bentuk string.
d. Konstruktor Kelas
public JamDigital2() {
initComponents();
Thread t = new Thread(this);
t.start();
}
Penjelasan :
Konstruktor kelas JamDigital2 yang memanggil metode initComponents() dan
memulai thread untuk menjalankan metode run().
e. Metode initComponents
private void initComponents() {
// ... (Kode dihasilkan oleh NetBeans untuk
inisialisasi komponen GUI)
}
Penjelasan :
Metode ini dihasilkan otomatis oleh NetBeans untuk menginisialisasi komponen GUI.
f. Metode btnExitActionPerformed
private void
btnExitActionPerformed(java.awt.event.ActionEvent evt) {
System.exit(0);
}
Penjelasan :
Metode ini dijalankan ketika tombol "EXIT" ditekan, dan menghentikan program.
g. Metode run()
@Override
public void run() {
while(true) {
// ... (Pembaruan waktu dan penyesuaian label-
label GUI)
}
}
Penjelasan :
Metode ini diimplementasikan dari antarmuka Runnable dan berisi loop tak terbatas
untuk pembaruan waktu secara real-time.
i. Variabel GUI :
private javax.swing.JButton btnExit;
private javax.swing.JLabel date;
private javax.swing.JLabel jLabel1;
private javax.swing.JPanel jPanel1;
private javax.swing.JLabel timein12;
private javax.swing.JLabel timein24;
Penjelasan :
Variabel-variabel ini merepresentasikan elemen-elemen antarmuka pengguna seperti
tombol, label, dan panel di GUI.
C. HASIL DAN DISKUSI
Diskusi:
1. Judul dan Tampilan Awal:
• Judul “DIGITAL CLOCK” memberikan informasi tentang tujuan program
• Tampilan awal menciptakan kesan jam digital
2. Format Waktu:
• Menampilkan waktu dalam dua format : 24 jam dan 12 jam (dengan AM/PM)
• Format 24 jam ditampilkan di timein24
• Format 12 jam ditampilkan di timein12
3. Tanggal:
Menampilkan tanggal di date dengan format “dd:MM:yyyy”.
4. Tombol “EXIT”:
Menyediakan fungsionalitas untuk keluar dari program
5. Pembaruan Real-time:
• Menggunakan thread untuk menjalankan metode run() secara terus-menerus.
• Menggunakan kelas Calendar untuk mendapatkan informasi waktu dan tanggal
aktual
6. Penggunaan Thread:
Membuat thread pada kontruktor dan memulainya untuk memastikan pembaruan
waktu secara terus menerus.
7. Penggunaan SimpleDateFormat:
• Menggunakan SimpleDateFormat untuk mengonversi waktu menjadi format yang
diinginkan
• Format waktu 24 jam: “HH:mm:ss”
• Format waktu 12 jam: “hh:mm:ss aa”
• Format waktu tanggal: “dd:MM:yyyy”
Kesimpulan:
Program jam digital ini memberikan solusi sederhana untuk melihat waktu dan
tanggal secara real-time. Desain GUI yang intuitif dan fungsionalitas pembaruan real-
time membuatnya berguna untuk pemantauan waktu sehari-hari. Dengan tambahan
tombol “EXIT”, pengguna dapat menghentikan program dengan mudah. Program ini
menunjukkkan penggunaan dasar Java dan Netbeans dalam pengembangan antarmuka
pengguna
Catatan :
1. Berkas yang dikumpulkan terdiri dari Laporan Proyek (format terlampir di atas)
dan Project Code (dari Netbeans) yang disimpan dalam 1 (satu) folder yang sama
dan dijadikan ke dalam bentuk .zip.
2. File .zip dikumpulkan melalui google drive oleh perwakilan kelompok
menggunakan email mahasiswa (fellow email dengan domain @unimal.ac.id)
sebelum melakukan presentasi.
3. Berikut google drive link untuk pengumpulan pada masing-masing kelas :
- A3 :
https://drive.google.com/drive/folders/1tEqLnruYkWU70s8D8m8s1z1D6hI
0N-U_?usp=sharing
- A4 :
https://drive.google.com/drive/folders/1VknbOnF6sMzcK19S60ap7Wkn_bQ
gGqNu?usp=sharing
- A5 :
https://drive.google.com/drive/folders/1NQ7tNPrVy5fFcvvyoUVj0fF18BjN9
yT9?usp=sharing
- A6 : https://drive.google.com/drive/folders/1thaY4-
e85Z45xpHWRT7ItMubpoaX8PNk?usp=sharing