LAPORAN PRAKTIKUM BAHASA PEMROGRAMAN JAVA
Disusun Untuk Memenuhi Syarat Kelulusan Matakuliah Pemrograman Berorientasi Objek
OLEH : NAMA : AGUSRIANTO NIM : C1657201048
PROGRAM STUDI SISTEM INFORMASI
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER (STMIK) PALANGKARAYA 2019
PRAKTIKUM A. Pengertian Java Java adalah bahasa
pemrograman yang
dapat
dijalankan
diberbagai komputer termasuk telepon genggam. Bahasa ini awalnya dibuat oleh James Gosling saat masih bergabung di Sun Microsystems saat ini merupakan bagian dari Oracledan dirilis tahun 1995. Bahasa ini banyak mengadopsi sintaksis yang terdapat pada C dan C++ namun dengan sintaksis model objek yang lebih sederhana serta dukungan rutin-rutin aras bawah yang minimal. Aplikasi-aplikasi berbasis java umumnya dikompilasi ke dalam pcode(bytecode) dan dapat dijalankan pada berbagai Mesin Virtual Java (JVM).
B. Tujuan Praktikum 1.
Mahasiswa mampu membuat kelas dengan atribut (data member) dan metodenya dalam Java.
2.
Mahasiswa mampu membuat program utama (main program) yang mempergunakan 1 kelas maupun lebih.
3.
Mahasiswa mampu membaca diagram kelas
C. Latihan 1.
Program Lingkaran
a) Input Lingkaran
2
Gambar 1. Sourcecode Input Lingkaran. b) Input Lingkaran Main
Gambar 2. Source code input lingkaran main c) Output
Gambar 3. Output Lingkaran d) Analisis Program Analisis Lingkaran Mendeklarasikan folder/package
package lingkaran;
dengan nama lingkaran Mendeklarasikan public class dengan
public class lingkaran {
nama lingkaran Mendeklarasikan variabel r dengan tipe
double r;
data double public double hitungLuas(){ Mendeklarasikan method double hitungLuas() dimana method ini dapat diakses oleh class yang lain jika masih dalam satu folder yang sama dan method ini memiliki nilai balikan dengan bertipe double Mendeklarasikan variabel PHI dengan
final double PHI=3.14;
3
nilai 3.14 dimana nilai pada variabel ini tidak dapat diubah (final) Mendeklarasikan variabel luas dengan
double luas;
tipe data double luas=PHI*r*r;
Rumus menghitung nilai luas lingkaran
return luas;
Mengembalikan nilai variabel luas Untuk mengakhiri blok method
}
hitungLuas() Untuk mengakhiri public class
}
lingkaran
Analisis LingkaranMain Mendeklarasikan folder/package dengan
package lingkaran;
nama lingkaran public class lingkaranmain
Mendeklarasikan public class dengan
{
nama lingkaranmain
public static void
Method fungsi utama untuk
main(String[] args) {
menjalankan program dalam java
lingkaran lingkar1=new
Membuat objek baru bernama
lingkaran();
‘lingkar1’di dalam class lingkaran
lingkar1.r=7;
Nilai jari-jari ke dalam atribut r dalam objek ‘lingkar1’ yaitu 7
System.out.println("Luas
Perintah untuk menampilkan output
lingkaran dengan
“Luas lingkaran dengan jari-jari “ lalu
jari="+lingkar1.r+" adalah
memanggil nilai pada atribut r dalam
: "+lingkar1.hitungLuas());
objek ‘lingkar1’ kemudian menampilkan “ adalah “ serta memerintahkan objek ‘lingkar1’ untuk menghitung luas dalam method hitungLuas()yang kemudian hasilnya akan ditampilkan Untuk mengakhiri method public static
}
4
void main (String[ ] args) Untuk mengakhiri public class
}
LingkaranMain
2.
Program Bujur Sangkar
a) Input BujurSangkar
Gambar 4. Sourcecode BujurSangkar
b) Input BujurSangkarMain
Gambar 5. Source BujurSangkarMain
5
c) Output
Gambar 6. Output Bujur Sangkar
d) Analisis Program Analisis BujurSangkar Mendeklarasikan folder/package
package bujursangkar;
dengan nama bujursangkar Mendeklarasikan public class dengan
public class bujursangkar {
nama bujursangkar Mendeklarasikan variabel sisi dengan
int sisi;
tipe data interger public double
Mendeklarasikan method double
hitungLuas(){
hitungLuas() dimana method ini dapat diakses oleh class yang lain jika masih dalam satu folder yang sama dan method ini memiliki nilai balikan dengan bertipe double Mendeklarasikan variabel luas dengan
double luas;
tipe data double Rumus menghitung nilai luas
luas=sisi*sisi;
bujursangkar Mengembalikan nilai variabel luas
return luas;
Mengakhiri blok method hitungLuas()
}
Mengakhiri public class lingkaran
}
Analisis BujurSangkarMain Mendeklarasikan folder/package
package bujursangkar;
6
dengan nama bujursangkar Untuk memanggil atribut Scanner yang
import java.util.Scanner;
terdapat dalam Java. public class
Mendeklarasikan public class dengan
bujursangkarmain {
nama bujursangkarmain
public static void
Method fungsi utama untuk
main(String[] args) {
menjalankan program dalam java
Bujursangkar bujur1=new
Membuat objek baru bernama ‘bujur1’
bujursangkar();
dengan menggunakan class BujurSangkar
Bujursangkar bujur2=new
Membuat objek baru bernama ‘bujur2’
bujursangkar();
dengan menggunakan class BujurSangkar
Scanner tombol = new
Membuat objek baru dengan nama
Scanner(System.in);
input pada kelas Scanner dengan memanggil atribut Scanner yang telah terdapat dalam Java
System.out.println("Masuk
Perintah untuk menampilkan output
an sisi bujur sangkar 1");
“Masukan sisi bujur sangkar 1”
bujur1.sisi=
Meminta input dari user yang disimpan
tombol.nextInt();
ke dalam atribut ‘sisi’ dari objek ‘bujur1’ dengan tipe data integer
System.out.println("Masuk
Perintah untuk menampilkan output
an sisi bujur sangkar 2");
“Masukan sisi bujur sangkar 2”
bujur2.sisi=
Meminta input dari user yang disimpan
tombol.nextInt();
ke dalam atribut ‘sisi’ dari objek ‘bujur2’ dengan tipe data integer
System.out.println("Luas
Perintah untuk menampilkan output
Bujur Sangkar dengan
“Luas bujur sangkar dengan sisi=” lalu
sisi="+bujur1.sisi+" adalah
memanggil nilai yang telah di inputkan
"+bujur1.hitungLuas());
oleh user ke dalam atribut ‘sisi’ dari objek ‘bujur1’, kemudian menampilkan
7
output “ adalah” serta memerintahkan objek ‘bujur1’ untuk menghitung luas dalam method hitungLuas() yang kemudian hasilnya akan ditampilkan System.out.println("Luas
Perintah untuk menampilkan output
Bujur Sangkar dengan
“Luas bujur sangkar dengan sisi=” lalu
sisi="+bujur2.sisi+" adalah
memanggil nilai yang telah di inputkan
"+bujur2.hitungLuas());
oleh user ke dalam atribut ‘sisi’ dari objek ‘bujur2’, kemudian menampilkan output “ adalah” serta memerintahkan objek ‘bujur2’ untuk menghitung luas dalam method hitungLuas() yang kemudian hasilnya akan ditampilkan Mengakhiri method public static void
}
main (String[ ] args) Mengakhiri public class
}
BujurSangkarMain
3.
Program Persegi
a) Input Persegi
8
b) Input PersegiMain
c) Output
9
d) Analisis Program Analisis Persegi.java package Persegi;
Mendeklarasikan folder/package dengan nama Persegi.
public class Persegi {
Mendeklarasikan public class dengan nama Persegi.
int panj;
Mendeklarasikan variabel panj dengan tipe data interger.
int lebar;
Mendeklarasikan variabel lebar dengan tipe data interger.
double luas;
Mendeklarasikan variabel luas dengan tipe data double
public double luas(){
Mendeklarasikan method double luas() dimana method ini dapat diakses oleh class yang lain jika masih dalam satu folder yang sama dan method ini memiliki nilai balikan dengan bertipe double
luas=panj*lebar;
Rumus menghitung nilai luas Persegi.
return luas;
Mengembalikan nilai variabel luas.
}
Mengakhiri method public static void main (String[ ] args)
}
Mengakhiri public class Persegi
Analisis PersegiMain.java package Persegi;
Mendeklarasikan folder/package dengan nama Persegi
import
Untuk memanggil komponen bernama
javax.swing.JOptionPane;
JOptionPane untuk membuat dialog yang interakif pada Java.
public class PersegiMain {
Mendeklarasikan public class dengan nama PersegiMain.
10
public static void
Method fungsi utama untuk
main(String[] args) {
menjalankan program dalam java
Persegi ObjPersegi=new
Membuat objek baru bernama
Persegi();
‘ObjPersegi’ dengan menggunakan class Persegi.
ObjPersegi.panj=Integer.pa
Menampilkan dialog dengan
rseInt(JOptionPane.showIn
JOptionPane yang bisa digunakan
putDialog(null, "Masukan
untuk mengambil input dari user dan
Panjang"));
akan di simpan ke dalam atribut ‘panj’ dari objek ‘ObjPersegi’ dengan tipe data integer.
ObjPersegi.lebar=Integer.p
Menampilkan dialog dengan
arseInt(JOptionPane.showI
JOptionPane yang bisa digunakan
nputDialog(null, "Masukan
untuk mengambil input dari user dan
Lebar"));
akan di simpan ke dalam atribut ‘lebar’ dari objek ‘ObjPersegi’ dengan tipe data integer.
System.out.println("Masuk
Perintah untuk menampilkan output
an sisi bujur sangkar 2");
“Masukan sisi bujur sangkar 2”
bujur2.sisi=
Meminta input dari user yang disimpan
tombol.nextInt();
ke dalam atribut ‘sisi’ dari objek ‘bujur2’ dengan tipe data integer
JOptionPane.showMessage
Menampilkan output berupa dialog
Dialog(null,"Hasilnya
dengan keterangan “Hasilnya Adalah :
Adalah : "
” lalu memanggil nilai yang telah di
+ObjPersegi.luas());
inputkan oleh user ke dalam atribut ‘panj’ dan ‘lebar’ dari objek ‘ObjPersegi’, kemudian memerintahkan objek ‘ObjPersegi’ untuk menghitung luas dalam method luas() yang kemudian hasilnya akan ditampilkan.
}
Mengakhiri method public static void
11
main (String[ ] args) Mengakhiri public class Persegi
}
4.
Program Nilai Mahasiswa
a) Input mahasiswa.java
Gambar . Sourcecode Input Mahasiswa
b) Input mahasiswamain.java
12
Gambar . Sourcecode Input MahasiswaMain c) Output
Gambar . Sourcecode Output Program Nilai Mahasiswa
d) Analisis Program Analisis mahasiswa.java Package nilaimahasiswa; public class mahasiswa { String nama; String nim; String alamat; String hasil; float ipk;
Mendeklarasikan folder/package dengan nama nilaimahasiswa Mendeklarasikan public class dengan nama mahasiswa Mendeklarasikan variable nama dengan tipe data String Mendeklarasikan variable nim dengan tipe data String Mendeklarasikan variable alamat dengan tipe data String Mendeklarasikan variable hasil dengan tipe data String Mendeklarasikan variable ipk dengan tipe
13
double uts1; double uts2; double uas; public double HitFinal(){
data float Mendeklarasikan variable uts1 dengan tipe data double Mendeklarasikan variable uts2 dengan tipe data double Mendeklarasikan variable uas dengan tipe data double Mendeklarasikan method double HitFinal () dimana method ini dapat diakses oleh class yang lain jika masih dalam satu folder yang sama dan method ini memiliki nilai balikan dengan bertipe double
double nilaiakhir=(0.3*uts1)+(0. 3*uts2)+(0.4*uas); return nilaiakhir; } public String KonversiNilai(){
if (HitFinal()>=80){ hasil = "A"; }
else if((65<=HitFinal())&&(H itFinal()<80)){ hasil = "B"; } else if((55<=HitFinal())&&(H itFinal()<65)){ hasil = "C"; } else if((45<=HitFinal())&&(H itFinal()<55)){
Rumus untuk menentukan nilai variable nilaiakhir bertipe double Mengembalikan nilai “nilaiakhir” yang bertipe data double Mengakhiri blok method HitFinal Mendeklarasikan method String KonversiNilai () dimana method ini dapat diakses oleh class yang lain jika masih dalam satu folder yang sama dan method ini memiliki nilai balikan dengan bertipe String Jika nilai yang di dapat dalam method HitFinal adalah lebih dari atau sama dengan 80, maka akan di eksekusi ke perintah selanjutnya yang terdapat di dalam method untuk dapat menampilkan output “A” Jika nilai yang di dapat dalam method HitFinal adalah berada diantara 65 hingga kurang dari 80, maka akan di eksekusi ke perintah selanjutnya yang terdapat di dalam method untuk dapat menampilkan output “B” Jika nilai yang di dapat dalam method HitFinal adalah berada diantara 55 hingga kurang dari 65, maka akan di eksekusi ke perintah selanjutnya yang terdapat di dalam method untuk dapat menampilkan output “C” Jika nilai yang di dapat dalam method HitFinal adalah berada diantara 45 hingga kurang dari 55, maka akan di eksekusi ke
14
hasil = "D"; } else if(HitFinal()<45){ hasil = "E"; }
return hasil; } }
perintah selanjutnya yang terdapat di dalam method untuk dapat menampilkan output “D” Jika nilai yang di dapat dalam method HitFinal adalah kurang dari 45, maka akan di eksekusi ke perintah selanjutnya yang terdapat di dalam method untuk dapat menampilkan output “E” Mengembalikan nilai variabel hasil yang bertipe data String Mengakhiri blok method KonversiNilai Untuk mengakhiri public class mahasiswa
Analisis mahasiswamain.java Mendeklarasikan folder/package dengan nama nilaimahasiswa import java.util.Scanner; Untuk memanggil atribut Scanner yang terdapat dalam Java. Mendeklarasikan public class dengan public class nama mahasiswamain mahasiswamain { Method fungsi utama untuk menjalankan public static void program dalam java main(String[] args) { Membuat objek baru bernama mahasiswa ‘nilaimahasiswa1’ dengan menggunakan nilaimahasiswa1 = new class mahasiswa mahasiswa(); Membuat objek baru bernama mahasiswa ‘nilaimahasiswa2’ dengan menggunakan nilaimahasiswa2 = new class mahasiswa mahasiswa(); Membuat objek baru bernama mahasiswa ‘nilaimahasiswa3’ dengan menggunakan nilaimahasiswa3 = new class mahasiswa mahasiswa(); Membuat objek baru dengan nama input Scanner deon = new pada kelas Scanner dengan memanggil Scanner(System.in); atribut Scanner yang telah terdapat dalam Java System.out.println("Data Perintah untuk menampilkan output “Data mahasiswa I"); mahasiswa I” System.out.println("Nam Perintah untuk menampilkan output “Nama : ” a : "); nilaimahasiswa1.nama = Meminta input dari user yang disimpan ke dalam atribut ‘nama’ dari objek deon.next(); ‘nilaimahasiswa1’ dengan tipe data String System.out.println("UTS Perintah untuk menampilkan output “UTS 1 : "); 1:” Meminta input dari user yang disimpan ke nilaimahasiswa1.uts1 = dalam atribut ‘uts1’ dari objek deon.nextDouble(); package nilaimahasiswa;
15
System.out.println("UTS 2 : "); nilaimahasiswa1.uts2 = deon.nextDouble(); System.out.println("UAS : "); nilaimahasiswa1.uas = deon.nextDouble(); System.out.println(""); System.out.println("Data Mahasiswa II"); System.out.println("Nam a : "); nilaimahasiswa2.nama = deon.next(); System.out.println("UTS 1 : "); nilaimahasiswa2.uts1 = deon.nextDouble(); System.out.println("UTS 2 : "); nilaimahasiswa2.uts2 = deon.nextDouble(); System.out.println("UAS : "); nilaimahasiswa2.uas = deon.nextDouble(); System.out.println(""); System.out.println("Data Mahasiswa III"); System.out.println("Nam a : "); nilaimahasiswa3.nama = deon.next(); System.out.println("UTS 1 : "); nilaimahasiswa3.uts1 =
‘nilaimahasiswa1’ dengan tipe data double Perintah untuk menampilkan output “UTS 2:” Meminta input dari user yang disimpan ke dalam atribut ‘uts2’ dari objek ‘nilaimahasiswa1’ dengan tipe data double Perintah untuk menampilkan output “UAS :” Meminta input dari user yang disimpan ke dalam atribut ‘uas’ dari objek ‘nilaimahasiswa1’ dengan tipe data double Perintah untuk menampilkan output berupa spasi kosong Perintah untuk menampilkan output “Data mahasiswa II” Perintah untuk menampilkan output “Nama : ” Meminta input dari user yang disimpan ke dalam atribut ‘nama’ dari objek ‘nilaimahasiswa1’ dengan tipe data String Perintah untuk menampilkan output “UTS 1:” Meminta input dari user yang disimpan ke dalam atribut ‘uts1’ dari objek ‘nilaimahasiswa2’ dengan tipe data double Perintah untuk menampilkan output “UTS 2:” Meminta input dari user yang disimpan ke dalam atribut ‘uts2’ dari objek ‘nilaimahasiswa2’ dengan tipe data double Perintah untuk menampilkan output “UAS :” Meminta input dari user yang disimpan ke dalam atribut ‘uas’ dari objek ‘nilaimahasiswa2’ dengan tipe data double Perintah untuk menampilkan output berupa spasi kosong Perintah untuk menampilkan output “Data mahasiswa III” Perintah untuk menampilkan output “Nama : ” Meminta input dari user yang disimpan ke dalam atribut ‘nama’ dari objek ‘nilaimahasiswa3’ dengan tipe data String Perintah untuk menampilkan output “UTS 1:” Meminta input dari user yang disimpan ke
16
dalam atribut ‘uts1’ dari objek ‘nilaimahasiswa3’ dengan tipe data double System.out.println("UTS Perintah untuk menampilkan output “UTS 2 : "); 2:” Meminta input dari user yang disimpan ke nilaimahasiswa3.uts2 = dalam atribut ‘uts2’ dari objek deon.nextDouble(); ‘nilaimahasiswa3’ dengan tipe data double System.out.println("UAS Perintah untuk menampilkan output “UAS : "); :” Meminta input dari user yang disimpan ke nilaimahasiswa3.uas = dalam atribut ‘uas’ dari objek deon.nextDouble(); ‘nilaimahasiswa3’ dengan tipe data double Perintah untuk menampilkan output System.out.println(""); berupa spasi kosong Perintah untuk menampilkan output yang System.out.println(nilai diawali dengan memanggil nilai yang telah mahasiswa1.nama + " di inputkan oleh user dan di simpan dalam Nilai Akhir "+ "" +String.format("%.2f",n atribut ‘nama’ dari objek ilaimahasiswa1.HitFinal( ‘nilaimahasiswa1’ yang kemudian menampilkan output “nilai akhir” lalu )) + " Predikat " + nilaimahasiswa1.Konver memanggil nilai yang di dapatkan dalam method HitFinal() dari objek siNilai()); ‘nilaimahasiswa1’ dengan tipe data double kemudian menampilkan kembali teks “predikat” lalu memanggil nilai konversi yang di dapatkan dalam method KonversiNilai() dari objek ‘nilaimahasiswa1’sesuai dengan ketentuan dimana nilai ini bertipe data String Perintah untuk menampilkan output yang System.out.println(nilai diawali dengan memanggil nilai yang telah mahasiswa2.nama + " di inputkan oleh user dan di simpan dalam Nilai Akhir "+ "" + atribut ‘nama’ dari objek String.format("%.2f", nilaimahasiswa2.HitFina ‘nilaimahasiswa2’ yang kemudian menampilkan output “nilai akhir” lalu l()) + " Predikat " + nilaimahasiswa2.Konver memanggil nilai yang di dapatkan dalam method HitFinal() dari objek siNilai()); ‘nilaimahasiswa2’ dengan tipe data double kemudian menampilkan kembali teks “predikat” lalu memanggil nilai konversi yang di dapatkan dalam method KonversiNilai() dari objek ‘nilaimahasiswa2’sesuai dengan ketentuan dimana nilai ini bertipe data String Perintah untuk menampilkan output yang diawali dengan memanggil nilai yang telah System.out.println(nilai di inputkan oleh user dan di simpan dalam mahasiswa3.nama + " atribut ‘nama’ dari objek Nilai Akhir "+ "" + deon.nextDouble();
17
String.format("%.2f", nilaimahasiswa3.HitFina l()) + " Predikat " + nilaimahasiswa3.Konver siNilai());
} }
‘nilaimahasiswa3’ yang kemudian menampilkan output “nilai akhir” lalu memanggil nilai yang di dapatkan dalam method HitFinal() dari objek ‘nilaimahasiswa3’ dengan tipe data double kemudian menampilkan kembali teks “predikat” lalu memanggil nilai konversi yang di dapatkan dalam method KonversiNilai() dari objek ‘nilaimahasiswa3’sesuai dengan ketentuan dimana nilai ini bertipe data String Mengakhiri method public static void main (String[ ] args) Mengakhiri public class mahasiswamain
18
DAFTAR PUSTAKA
https://www.petanikode.com/java-swing-joptionpane/
http://exelsa2012.usd.ac.id/course/view.php?id=20184
19