Laporan PBO Modul 6
Laporan PBO Modul 6
Oleh:
Bimo Ahmad Ramadhan 170533628584
3. Konsep interface.
Interface merupakan suatu mekanisme dalam Java yang memungkinkan
untuk berbagi konstanta atau menentukan bentuk method yang dapat
digunakan oleh sejumlah class. Sebuah class dapat mengimplementasikan
lebih dari satu interface. Di dalam interface, penentu akses untuk definisi
konstanta adalah public static final. Sedangkan penentu akses untuk
deklarasi abstract methodadalah public abstract. Kedua penentu akses ini
tidak harus dituliskan secara eksplisit dalam kode program karena Java akan
menggunakan kedua penentu akses ini sebagai penentu akses default bila
sekiranya tidak ditulis secara eksplisit.
4. Deklarasi, penggunaan, dan pewarisan interface.
System.out.println("\n***************************
*********************");
System.out.println("\n\tMENERAPKAN
PENGGUNAKAN ABSTRACT CLASS #1");
System.out.println("\n***************************
*********************");
System.out.println("\n***************************
**************************");
System.out.println("\n\tMenerapkan
Penggunaan Interface #2");
System.out.println("\n***************************
**************************");
System.out.println("\n***************************
********************");
System.out.println("\n\tMENERAPKAN
PENGGUNAANN INTERFACE #1");
System.out.println("\n***************************
*********************");
Hasil Program :
Penjelasan :
Pada program tersebut digunakan untuk menerapkan penggunaan Interface
pada pendefinisian Method dikotil dan Method monokotil. Dalam program
tersebut digunakan interface Tumbuhan yang digunakan pada syntax public
static final String kons_dikotil = "TUMBUHAN DIKOTIL";public
static final String kons_monokotil = "TUMBUHAN MONOKOTIL";
yang berfungsi sebagai menerapkan penggunaan interfacenya. Dan
menggunakan abstract public abstract void dikotil(); public
abstract void monokotil(). Dalam Variabel nama di deklarasikan di
dalam interface Tumbuhan. Pada interface Tumbuhan untuk mengabstract
pada class tersebut. Kedua menggunakan class Jenis pada extends class
Tumbuhan. Menggunakan String nama; untuk menampilkan nama pada
jenis tumbuhan yaitu dikotil dan monokotil. Pada penggunaan method
tersebut untuk pendefinisian dikotil dan monokotil di deklarasikan pada
class TryInterface1 untuk memanggil semua methodnya yang digunakan
syntax public static void main(String[] args) yang fungsinya
utama yang akan dijalankan ketika program di eksekusi. Jenis mangga =
new Jenis(); mangga.nama = "Mang ga";mangga.dikotil(); Jenis
kelapa = new Jenis();kelapa.nama = "Kelapa";
kelapa.monokotil(); yang berfungsi sebagai inputan pada inputan dikotil
dan monokotil tersebut.
System.out.println("\n*********************************
********************");
System.out.println("\n\tMenerapkan Penggunaan
Interface #2");
System.out.println("\n*********************************
********************");
Hitung lingkaran = new Hitung();
lingkaran.kelilingLingkaran(10);
Hasil Program :
Penjelasan :
Pada program tersebut digunakan untuk melakukan penerapan Penggunaan
Interface yang dimana penggunaan interface tersebut digunakan untuk
menghitung keliling lingkaran dan persegi. Pada method pertama
menggunakan pada Interface Operasi yang meliputi double kons_pi =
3.14; untuk menghitung luas lingkaran. String kons_panjang = " cm
"; untuk menghitung panjang dari luas benda tersebut.void
kelilingLingkaran(double radius); untuk menampilkan hasil radius
dari keliling lingkaran. void kelilingPeresegi(); untuk menampilkan
keliling persegi. Kemudian pada class hitung untuk mengimplements pada
class Operasi. double lingkaran, persegi; double sisi=5; untuk
menghitung nilai sisi pada lingkaran dan persegi. Dan pada sisi = 5 yaitu
menampilkan pada nilai sisi persegi. Dan fungsi persegi = 4*sisi; yaitu
untuk menghitung hasil keliling persegi. Setelah irtu pada
membuat class berikutnya untuk menampilkan nilai lingkarannya yaitu
class TryOperasi. Pada class tersebut menampilkan fungsi public static
void main(String[] args) yang fungsinya utama yang akan dijalankan
ketika program di eksekusi. Kemudian syntax Hitung lingkaran = new
Hitung(); lingkaran.kelilingLingkaran(10); untuk menampilkan
hasil dari radius dan keliling lingkarannya. Pada hasil method
KelilingPersegi() terdapat perhitungan untuk menampilkan sisi dn
kelilingnya.
add("North", p1);
add("Center", p2);
add("South", p3);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public TryCheckBox()
{
super("MENGGUNAKAN CHECK BOX");
setSize(400,150);
add("North",p1);
add("South",p2);
cb1.addActionListener(this);
cb2.addActionListener(this);
cb3.addActionListener(this);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public TryRadioButton()
{
super("MENGGUNAKAN RADIO BUTTON");
setSize(400,150);
bg = new ButtonGroup();
bg.add(rb1);
bg.add(rb2);
bg.add(rb3);
p1.add(rb1);
p1.add(rb2);
p1.add(rb3);
add("North",p1);
add("South",p2);
rb1.addActionListener(this);
rb2.addActionListener(this);
rb3.addActionListener(this);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
interface Konstanta
{
public static final double kons_pi = 3.14;
public static final String kons_luas = " cm
persegi";
public static final String kons_volume = "
kubik";
}
System.out.println("\n***************************
**************************************");
System.out.println("\n\tMENGHITUNG LUAS
PERMUKAAN DAN VOLUME BANGUN RUANG");
System.out.println("\n\t\t\tPILIHAN :");
System.out.println("\n\t\t\t1. BALOK");
System.out.println("\n\t\t\t2. TABUNG");
System.out.println("\n***************************
**************************************");
Scanner baca = new Scanner(System.in);
System.out.print("Masukkan pilihan anda :
");
pilih = baca.nextInt();
System.out.println("\n***************************
*************************************");
switch(pilih)
{
case 1:
LuasVolume balok = new
LuasVolume();
balok.namaBangun = "BALOK";
balok.inputBalok();
System.out.println("\n***************************
***********************************");
balok.luasPermukaanBalok();
balok.volumeBalok();
break;
case 2:
LuasVolume tabung = new
LuasVolume();
tabung.namaBangun = "BALOK";
tabung.inputTabung();
System.out.println("\n***************************
***********************************");
tabung.luasPermukaanTabung();
tabung.volumeTabung();
break;
default:
System.out.println();
}
}
}
Hasil Program :
Penjelasan :
Pada program tersebut digunakan untuk menampilkan perhitungan luas
permukaan dan Volume Balok dan Tabung. Dengan program ini untuk
menghitung luas dan volumenya terdiri dari balok ialah nilai panjang, lebar,
dan tinggi kemudian di tampilkan ke luas permukaan tabung. Sedangkan
dari hitung tabung ialah nilai radius dan nilai tinggi yang ditampilkan ke
luas permukaan tabung. Program tersebut berbasi Consule dan import
public JasaTravel()
{
super("JASA TRAVEL MALANG");
setSize(400,280);
bg = new ButtonGroup();
bg.add(rb1);
bg.add(rb2);
bg.add(rb3);
p1.add(label1);
p2.add(label2);
p2.add(label3);
p2.add(label4);
p3.add(textfield1);
p3.add(textfield2);
p3.add(textfield3);
p4.add(label5);
p4.add(rb1);
p4.add(rb2);
p4.add(rb3);
p4.add(label6);
p4.add(cb1);
p4.add(cb2);
p4.add(cb3);
p4.add(btnPesan);
p4.add(btnHapus);
add("North",p1);
add("West",p2);
add("Center",p3);
add("South",p4);
rb1.addActionListener(this);
rb2.addActionListener(this);
rb3.addActionListener(this);
cb1.addActionListener(this);
cb2.addActionListener(this);
cb3.addActionListener(this);
btnPesan.addActionListener(this);
btnHapus.addActionListener(this);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
if (rb1.isSelected())
{
Tujuan =rb1.getText();
}
else if(rb2.isSelected())
{
Tujuan =rb2.getText();
}
else if(rb3.isSelected())
{
Tujuan =rb3.getText();
}
if(cb1.isSelected())
{
Fasilitas = cb1.getText();
}
if(cb2.isSelected())
{
Fasilitas = cb2.getText();
}
if(cb3.isSelected())
{
Fasilitas = cb3.getText();
}
JOptionPane.showMessageDialog(null,
"Nama\t: "+isiTextField1+"\nTTL\t:
"+isiTextField2+"\nJenis
Kelamin\t:"+isiTextField3+"\nTujuan\t:"+Tujuan+"\nFasil
itas\t:"+Fasilitas," STRUCK PEMESANAN TIKET ",
JOptionPane.INFORMATION_MESSAGE);
}
if(e.getSource()==btnHapus)
{
textfield1.setText("");
textfield2.setText("");
textfield3.setText("");
rb1.setSelected(false);
rb2.setSelected(false);
rb3.setSelected(false);
cb1.setSelected(false);
cb2.setSelected(false);
cb3.setSelected(false);
}
}
public static void main(String[] args)
{
JasaTravel frame = new JasaTravel();
}
}
Hasil Program :
Penjelasan :
Pada program tersebut digunakan untuk membuat program Jasa Travel yang
untuk di pesan melalui tike. Jika di inputkan data akan di tampilkan memalui
pesan untuk mengetahui informasi. Program ini menggunakan secara
berbasis GUI yang dimana program tersebut mempunyai label 6 yaitu
inputan data Nama pemesan, Alamat pemesanan, no hp / telepon. Tujuan
dan fasilitas. Kemudian program tersebut menggunakan import
V. Kesimpulan
Class abstrak dapat mengandung method abstract maupun method
tidak abstract, sedangkan interface hanya boleh mengandung method
abstract. Class abstrak dapat mendeklarasikan variabel instans,
sedangkan interface hanya dapat mendeklarasikan konstanta.
Class abstrak digunakan oleh Class lain melalui metode pewarisan
dengan kata kunci extends, sedangkan sebuah interface
diimplementasikan ke dalam suatu class dengan menggunakan kata
kunci implements, dan sebuah Class dapat mengimplementasikan lebih
dari satu interface.
Abstarck tidak untuk membentuk objek dan
mempunyai method tertentu yang berisi implementasi, dan juga
beberapa method yang akan di-overridden oleh subclasses nya.
Class abstract : Pendeklarasian dengan kata kunci ‘abstract’ dan
pendefinisian method dilakukan pada subkelas.
Interface adalah jenis khusus dari blok yang hanya berisi method
signature(atau constant ). Interface mendefinisikan sebuah(signature)
dari sebuah kumpulan method tanpa tubuh.Interface mendefinisikan
sebuah cara standar dan umum dalam menetapkan sifat-sifat dari class-
class. Mereka menyediakan class-class, tanpa memperhatikan lokasinya
dalam hirarki class, untuk mengimplementasikan sifat-
sifat yang umum.
Class interface dapat mewarisi lebih dari 1 interface. (subkelas mewarisi
superkelas). Penulisannya dengan cara dipisah oleh tanda koma.
Interface diletakkan pada class tersendiri, kemudian kelas kelas yang
ingin mengimplementasikannya hanya tinggal mengimpornya saja.