top of page
Search

Laporan Pratikum

  • Writer: rista bramastya
    rista bramastya
  • Dec 5, 2020
  • 14 min read

INHERITANCE - Pemrograman Berorientasi Obyek

berikut adalah laporan pratikum tentang inheritance


'-----------------------------------------------------------------------------------------------------------------------------'

LAPORAN PRAKTIKUM 4 INHERITANCE Disusun untuk Memenuhi Matakuliah Pemrograman Berorientasi Objek Dibimbing oleh Bapak Heru Wahyu Herwanto Oleh : RISTA BRAMASTYA NIM 190533646831 S1 PTI ’19 OFF B

UNIVERSITAS NEGERI MALANG FAKULTAS TEKNIK JURUSAN TEKNIK ELEKTRO PRODI S1 PENDIDIKAN TEKNIK INFORMATIKA MARET 2020


INHERITANCE A. Tujuan Tujuan dari praktikum PBO ini adalah untuk: 1. Menerapkan konsep inheritance. 2. Membuat superclass dan subclass. 3. Menerapkan keyword extends. 4. Menerapkan keyword super dan this. 5. Memanggil method dari superclass. 6. Memanggil constructor method dari superclass. 7. Membuat overriding method dari superclass. 8. Menggunakan class BorderLayout, GridLayout dan JTextArea. B. Dasar Teori Pewarisan (Inheritance) merupakan sifat dalam bahasa berorientasi objek yang memungkinkan sifat-sifat dari suatu kelas diturunkan ke kelas lain. Sistem OOP memungkinkan kita untuk mendefinisikan suatu kelas baru dengan mewarisi sifat dari kelas lain yang sudah ada. Penurunan sifat ini bisa dilakukan dilakukan secara bertingkat-tingkat, sehingga semakin ke bawah maka kelas tersebut semakin spesifik. Pewarisan memberikan atau mewariskan sesuatu kepada keturunan berikutnya. misalnya, seorang anak pasti akan mewarisi beberapa sifat atau perilaku yang dimiliki oleh ibu/bapaknya. dalam konteks ini, suatu kelas dalam program dapat diturunkan menjadi kelas-kelas baru lainnya yang akan mewarisi beberapa sifat atau perilaku dari kelas induknya. sebagai contoh, apabila anda memiliki kelas A dalam program yang anda buat maka anda dapat membentuk kelas-kelas turunan dari kelas A tersebut(Misalnya, kelas B) yang mewarisi sifat-sifat yang terkandung dalam kelas A. dalam proses pembuatan kelas turunan tersebut, Anda dapat menambahkan sifat dan perilaku baru ke dalam kelas B, yang sebelumnya tidak dimiliki dalam kelas A. Dalam terminologi java, kelas induk dinamakan dengan superclass dankelas turunan dinamakan dengan subclass. untuk membuat kelas anak atau kelas turunan berdasarkan class yang ada, anda dapat menggunakan kata kunci extends( extends artinya diturunkan.). Inheritance atau Pewarisan/Penurunan adalah konsep pemrograman dimana sebuah class dapat ‘menurunkanproperty dan method yang dimilikinya kepada class lain. Konsep inheritance digunakan untuk memanfaatkan fitur ‘code reuse’ untuk menghindari duplikasi kode program.Konsep inheritance membuat sebuah struktur atau ‘hierarchyclass dalam kode program. Class yang akan ‘diturunkan’ bisa disebut sebagai class induk (parent class), super class, atau base class. Sedangkan class yang ‘menerima penurunan’ bisa disebut sebagai class anak (child class), sub class, derived class atauheir class.Tidak semua property dan method dari class induk akan diturunkan. Property dan method dengan hak akses private, tidak akan diturunkan kepada class anak. Hanya property dan method dengan hak akses protected dan public saja yang bisa diakses dari class anak. Suatu class yang mempunyai class turunan dinamakan parent class atau base class. Sedangkan class turunan itu sendiri seringkali disebut subclass atau child class. Suatu subclass dapat mewarisi apa-apa yang dipunyai oleh parent class. Karena suatu subclass dapat mewarisi apa apa yang dipunyai oleh parent class-nya, maka member dari suatu subclass adalah terdiri dari apa-apa yang ia punyai dan juga apa-apa yang ia warisi dari class parent-nya. Kesimpulannya, boleh dikatakan bahwa suatu subclass adalah tidak lain hanya memperluas (extend) parent class-nya. Dari hirarki diatas dapat dilihat bahwa, semakin kebawah, class akan semakin bersifat spesifik. Class mamalia memiliki seluruh sifat yang dimiliki oleh binatang, demikian halnya juga macan , kucing, Paus dan Monyet memiliki seluruh sifat yang diturunkan dari class mamalia.Dengan konsep ini, karakteristik yang dimiliki oleh class binatang cukup didefinisikan didefinisikan dalam class binatang saja.Class mamalia tidak perlu mendefinisikan ulang apa yang telah dimiliki oleh class binatang, karena sebagai class turunannya, ia akan mendapatkan karakteristik dari class binatang secara otomatis. Demikian juga dengan class macan, kucing, Paus dan monyet, hanya perlu mendefinisikan karakteristik yang spesifik dimiliki oleh class-nya masing-masing. Dengan memanfaatkan konsep pewarisan ini dalam pemrograman, maka hanya perlu mendefinisikan karakteristik yang lebih umum akan didapatkan dari class darimana ia diturunkan. KEUNTUNGAN INHERITANCE 1. Subclass menyediakan state/behaviour yang spesifik yang membedakannya dengan superclass, hal ini akan memungkinkan programmer Java untuk menggunakan ulang source code dari superclass yang telah ada. 2. Programmer Java dapat mendefinisikan superclass khusus yang bersifat generik, yang disebut abstract class, untuk mendefinisikan class dengan behaviour dan state secara umum. ISTILAH INHERITANCE Extends Keyword ini harus kita tambahkan pada definisi class yang menjadi subclass. Superclass Superclass digunakan untuk menunjukkan hirarki class yang berarti class dasar dari subclass/class anak. Subclass Subclass adalah class anak atau turunan secara hirarki dari superclass. Super Keyword ini digunakan untuk memanggil konstruktor dari superclass atau menjadi variabel yang mengacu pada superclass. Methode Overriding Pendefinisian ulang method yang sama pada subclass Dalam inheritance, method overriding berbeda dengan method overloading. Kalau method overriding adalah mendefinisikan kembali method yang sama, baik nama method maupun signature atau parameter yang diperlukan dalam subclass, kalau method overloading adalah mendefinisikan method yang memiliki nama yang sama, tetapi dengan signature yang berbeda dalam definisi class yang sama. Kita baru perlu menerapkan inheritance pada saat kita jumpai ada suatu class yang dapat diperluas dari class lain. Inheritance diimplementasikan dengan menggunakan keyword extends, misalnya seperti di bawah ini:

Class Y di atas memiliki dua anggota juga yaitu b dan method_Dua().

Pengertian dari class Y extends X adalah anggota dari class X diwariskan pada class Y. Jadi sekarang class Y selain memiliki dua anggota juga akan mendapatkan tambahan dua anggota lain yang diwariskan atau inherit dari class X.

Untuk lebih jelasnya lihat gambar di bawah:

Beberapa Hal Yang Perlu Diingat Pada Inheritance Ada beberapa hal yang perlu diketahui dalam konsep inheritance pada pemrograman Java, diantaranya adalah: 1) Constructor, Blok Inisialisasi Static dan Blok Inisialisasi Instance dari superclass tidak akan di wariskan pada subclass. Namun, mereka akan dieksekusi ketika subclass membuat objek. 2) Anggota static dari superclass akan diwariskan pada subclass sebagai anggota static demikian pula dengan anggota non-static hanya akan diwariskan sebagai anggota non-static. 3) Jika anda menuliskan kode program: Ketika compile time error terjadi, misal: Implicit super constructor X() is undefined for default constructor. Must define an explicit constructor Di sini compiler akan memaksa anda untuk menulis constructor di class Y. Karena anda tidak mendefinisikan constructor untuk class Y. Jadi compiler akan menyediakan constructor default. Untuk menghindari error ini, anda dapat menggunakan super() untuk memanggil pernyataan constructor pada class X. Namun, ketika langsung menerapkan super() pada class Y, maka compile time error masih tetap akan terjadi. Oleh karena itu, anda harus menulis konstruktor pada subclass dalam hal ini class Y, baru kemudian di dalam konstruktor tersebut anda dapat memanggil constructor superclass dalam hal ini class X secara eksplisit. 4) Secara default semua class termasuk class yang anda buat adalah merupakan subclass dari class Object atau java.lang.Object. 5) Anda dapat memanggil constructor dari superclass secara eksplisit melalui pernyataan super() dari constructor subclass. Selain itu anda juga dapat memanggil constructor lain pada class yang sama melalui pernyataan this(), namun anda tidak bisa memanggil constructor subclass melalui constructor superclass. 6) Pengaruh dari access modifier Berikut ini adalah beberapa pengaruh dari acces modifier pada inheritance: § private: anggota private tidak bisa diwariskan pada subclass. § default : anggota default bisa diwariskan pada subclass di dalam package yang sama § protected: anggota protected dapat diwariskan pada subclass manapun, meskipun berada diluar package superclass. Anggota protected hanya dapat diakses di luar package melalui inheritance saja. § public: anggota public dapat diwariskan pada seluruh subclass



Latihan 1 Pemrograman Java

Nama Program : Memanggil method dari superclass. Bahasa Pemrogramam : Java Compiler : Sublime Text Source Code : class Parent { private int a=3; protected int b=5; protected void ParentMethod() { System.out.println("\nMethod di dalam class Parent"); System.out.println("Nilai a = "+a); } } class Child extends Parent { public void ChildMethod() { System.out.println("\nMethod di dalam class Child"); System.out.println("Nilai b = "+b); ParentMethod(); } } public class CallMethod { public static void main(String[] args) { System.out.println("\n******************************************"); System.out.println("\n\tMEMANGGIL METHOD PADA SUPERCLASS"); System.out.println("\n******************************************"); Child call = new Child(); call.ChildMethod(); System.out.println("\n******************************************"); } }

Output Program :

Penjelasan Program : Program tersebut digunakan untuk memanggil method dari superclass. Dalam program tersebut terdapat 3 class yaitu, class Parent, class Child dan class CallMethod. Dalam class Parent, terdapat protected void ParentMethod()yang berfungsi untuk membatasi hak akses method dan variabel. Sedangkan dalam class Parent, terdapat public void ChildMethod() yang berarti user dapat mengakses method tersebut. Dalam program tersebut, class Parent adalah superclass. Class Parent merupakan class induk yang akan mewariskan atau menurunkan. Sedangkan class Child merupakan subclass. Hal tersebut juga ditandai dengan class Child extends Parent yang menunjukan bahwa clas Child merupakan turunan dari class Parent. Modifier private akan membuat member hanya bisa diakses oleh dari dalam class itu sendiri. Sedangkan Modifier protected akan membuat member dan class hanya bisa diakses dari:Class itu sendiri;Sub class atau class anak;Package (class yang berada satu package dengannya).Modifier protected juga hanya boleh digunakan pada member saja. Jika program di compile maka output yang keluar adalah Nilai dari method yang terdapat dalam method child dan juga parent. Program selesai.


Latihan 2 Pemrograman Java

Nama Program : Memanggil constructor dari superclass. Bahasa Pemrogramam : Java Compiler : Sublime Text Source Code : class Person { private String name; private int age; public Person(String name, int age) { this.name=name; this.age=age; } public void fromPerson() { System.out.println("\n\tDitampilkan dari class Person"); System.out.println("\nNama : "+this.name); System.out.println("\nUsia : "+this.age); } } class Student extends Person { private String nim; public Student(String nim, String name, int age) { super(name, age); this.nim=nim; } public void fromStudent() { System.out.println("\n\tDitampilkan dari class Student"); System.out.println("\nNIM : "+this.nim); fromPerson(); } } public class CallConstructor { public static void main(String[] args) { System.out.println("\n**************************************************"); System.out.println("\n\tMEMANGGIL KONSTRUKTOR PADA SUPERCLASS"); System.out.println("\n**************************************************"); Student mhs = new Student("190533646831", "Rista Bramastya", 17); mhs.fromStudent(); System.out.println("\n**************************************************"); } }

Output Program :

Penjelasan Program : Program tersebut digunakan untuk memanggil constructor dalam superclass. Dalam program tersebut terdapat tiga class yaitu, class Person, class Student, class CallConstructor. . Dalam program tersebut, class Person adalah superclass. Class Person merupakan class induk yang akan mewariskan atau menurunkan. Sedangkan class Student merupakan subclass. Hal tersebut juga ditandai dengan class Student extends Person yang menunjukan bahwa clas Student merupakan turunan dari class Person. Dalam class Person, diawali dengan deklarasi variabel. Dilanjutkan dengan konstruktor superclass. Sedankan di class Student diawali dengan private String nim; Yang berarti user dibatasi untuk mengakses variabel tersebut. Lalu dilanjutkan dengan deklarasi konstruktor subclass. yang nantinya akan dipanggil di class CallConstructor. Sehinngga jika program di compile maka output yang keluar adalah NIM yang diakses dari class Student dan nama serta usia yang diakses dari class Person. Program selesai.


Latihan 3 Pemrograman Java

Nama Program : Membuat overriding method. Bahasa Pemrogramam : Java Compiler : Sublime Text Source Code : class Overriding { private int a=9; public void showData() { System.out.println("\nNilai a = "+a); System.out.println("\nDipanggil pada class "+this.getClass().getName()); } } class Overridingg extends Overriding { private int b=10; public void showData() { System.out.println("\nNilai b = "+b); System.out.println("\nDipanggil pada class "+this.getClass().getName()); super.showData(); } } public class DoOverriding { public static void main(String[] args) { System.out.println("\n**************************************************"); System.out.println("\n\tOVERRIDING DALAM INHERITANCE"); System.out.println("\n**************************************************"); Overriding call1 = new Overriding(); call1.showData(); Overridingg call2 = new Overridingg(); call2.showData(); System.out.println("\n**************************************************"); } }

Output Program :

Penjelasan Program : Program tersebut digunakan untuk membuat overriding method. . Overriding method merupakan method pada subclass yang sama persis dengan method pada superclass. Sama mulai dari nama method sampai dengan isinya. Overriding dipakai saat menggunakan method yang sama, tetapi berbeda implementasinya. Jadi overriding method mempunyai nama method yang sama, jumlah parameter dan tipe parameter serta nilai kembalian (return) method yang di-override. Dalam program tersebut terdapat 3 class yaitu class Overriding.overridingg dan DoOverriding. Pada class Overriding dimulai dengan deklarasi variabel dan method yang akan di override. Lalu dikelas Overridingg dimulai dengan overriding method showData(). Lalu di class DoOverriding, superclass yaitu Overriding dan subclass yaitu Overridingg akan dipanggil. Jika program tersebut dijalankan maka output yang akan keluar adalah nilai yang berasal dari superclass dan subclass. keyword this dalam program tersebut digunakan untuk mengakses variabel instan dari objek danv menyatakan objek sekarang. Program selesai.


Latihan 4 Pemrograman Java

Nama Program : Menggunakan class BorderLayout. Bahasa Pemrogramam : Java Compiler : Sublime Text Source Code : import javax.swing.*; import java.awt.*; public class TryBorderLayout extends JFrame { public TryBorderLayout() { super("MENGGUNAKAN BORDER LAYOUT"); setSize(500,200); setLayout(new BorderLayout()); add(new JButton("Tombol A : NORTH"),BorderLayout.NORTH); add(new JButton("Tombol B : EAST"),BorderLayout.EAST); add(new JButton("Tombol C : SOUTH"),BorderLayout.SOUTH); add(new JButton("Tombol D : WEST"),BorderLayout.WEST); add(new JButton("Tombol E : CENTER"),BorderLayout.CENTER); setVisible(true); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public static void main (String[]args) { TryBorderLayout frame = new TryBorderLayout(); } }


Output Program :

Penjelasan Program : Program tersebut digunakan untuk membuat class BorderLayout. Program diawali dengan memberi judul pada frame.Lalu dilanjutkan dengan mengatur ukuran frame. Lalu mengatur tata letak komponen . lalu langkah selanjutnya adalah mengatur letak button pada frame. Dalam program tersebut terdapat 5 button . button yang terdapat diatas atau utara,dengan tulisan “TOMBOL A: NORTH”, lalu tombol yang berada di kanan atau sebelah timur bertulisan” TOMBOL B : EAST”, lalu yang di bawah atau selatan bertuliskan “TOMBOL C : SOUTH”, lalu di kiri atau west bertuliskan “TOMBOL D : WEST”, lalu yang ditengah atau center bertuliskan “ TOMBOL E : CENTER “. Jika program tersebut decompile maka output yang keluar adalah sebuah frame dengan judul “MENGGUNAKAN BORDER LAYOUT”. Dan terdapat 5 button dengan masing-masing mempunyai nama yang berbeda. Program selesai.


Latihan 5 Pemrograman Java

Nama Program : Menggunakan class GridLayout. Bahasa Pemrogramam : Java Compiler : Sublime Text Source Code : import javax.swing.*; import java.awt.*; public class TryGridLayout extends JFrame { public TryGridLayout() { super("MENGGUNAKAN GRID LAYOUT"); setSize(400,200); JPanel p1 = new JPanel(); p1.setLayout(new GridLayout(2,3)); p1.add(new JButton("Tombol A")); p1.add(new JButton("Tombol B")); p1.add(new JButton("Tombol C")); p1.add(new JButton("Tombol D")); p1.add(new JButton("Tombol E")); JPanel p2 = new JPanel(); p2.setLayout(new GridLayout(3,2,50,10)); p2.add(new JButton("Tombol V")); p2.add(new JButton("Tombol W")); p2.add(new JButton("Tombol X")); p2.add(new JButton("Tombol Y")); p2.add(new JButton("Tombol Z")); add("North",p1); add("South",p2); setVisible(true); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public static void main (String[]args) { TryGridLayout frame = new TryGridLayout(); } }


Output Program :

Penjelasan Program : Program tersebut digunakan untuk membuat class GridLayout. Program diawali dengan memberi judul pada frame. Program tersebut mempunyai frame .Lalu dilanjutkan dengan mengatur ukuran frame. Lalu mengatur tata letak komponen . lalu langkah selanjutnya adalah mengatur letak button pada frame. Lalu dilanjutkan dengan mengatur ukuran frame. Dilanjutkan dengan meletakkan 5 button pertama yang menggunakan parameter GridLayout(2,3). Dan 5 button terakhir dengan parameter GridLayout(3,2,50,10). GridLAyout(2,3) artinya akan ada 2 kolom dan 3 baris. Sedangkan GridLayout(3,2,50,10) mempunyai arti bahwa akan terdapat 3 kolom 2 baris dengan jarak antar baris adalah 50 dan jarak antar kolom yaitu 10. Setelah itu meletakkan dan mengatur posisi panel pada frame. Pada panel pertama terletak diatas atau north lalu panel kedua terletak dibawah atau south. Jika program di compile maka akan muncul output berupa sebuah frame dengan judul “MENGGUNAKAN GRIDLAYOUT”. Dengan 5 panel dengan tulisan “TOMBOL A,B,C,D,E” berada di atas. Dan 5 panel dengan tulisan “ TOMBOL V,W,X,Y,Z” berada di bawah. Program selesai.


Latihan 6 Pemrograman Java

Nama Program : Menggunakan class JTextArea Bahasa Pemrogramam : Java Compiler : Sublime Text Source Code : import javax.swing.*; import java.awt.event.*; public class TryTextArea extends JFrame implements ActionListener { private JLabel label; private JTextArea tArea; private JButton btnTampil,btnHapus; private String isiTextArea; public TryTextArea() { super("MENGGUNAKAN TEXT AREA"); setSize(400,200); label = new JLabel("Tuliskan sesuatu dalam Text Area!"); tArea = new JTextArea("Silahkan Menulis",5,20); btnTampil = new JButton("TAMPILKAN"); btnHapus = new JButton("HAPUS"); JPanel p1 = new JPanel(); JPanel p2 = new JPanel(); JPanel p3 = new JPanel(); p1.add(label); p2.add(tArea); p3.add(btnTampil); p3.add(btnHapus); add("North",p1); add("Center",p2); add("South",p3); btnTampil.addActionListener(this); btnHapus.addActionListener(this); setVisible(true); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public void actionPerformed(ActionEvent e) { if(e.getSource()==btnTampil) { isiTextArea = tArea.getText(); JOptionPane.showMessageDialog(null, "isi text area adalah : \n" + isiTextArea, "Informasi", JOptionPane.INFORMATION_MESSAGE); } if(e.getSource()==btnHapus) { tArea.setText(""); } } public static void main(String[]args) { TryTextArea frame = new TryTextArea(); } }

Output Program :

Penjelasan Program : Program tersebut digunakan untuk membuat class JTextArea. Program diawali dengan membuat objek yang akan digunakan. Lalu membuat frame dan mengatur ukuran frame. Setelah itu menugaskan objek yang sudah dibuat.setelah itu meletakkan objek pada panel. Pada program tersebut terdapat 3 panel. Setelah itu meletakkan dan mengatur posisi panel pada frame. Lalu fungsi tArea=new JTextArea tersebut adalah untuk menampilkan inputan dari user.jika program dijalankan maka akan muncul output berupa frame dengan judul menggunakan text area. Lalu user dapat menginputkan kata. Jika user ingin menampilkan kata yang diinputkan maka user dapat menekan panet tampilkan maka akan muncul seperti teks book berupa kata yang diinputkan dengan frame yang berjudul informasi berbasis gui. Jika user menekan panel hapus maka user menghapus kata yang tadi sudah diinputkan menjadi kata yang diinginkan user. Program selesai.


Tugas 1 Pemrograman Java

Nama Program : Menerapkan konsep inheritance dan membuat overriding method Bahasa Pemrogramam : Java Compiler : Sublime Text Source Code : //superclass import java.util.Scanner; class tgs1 { private int nim,us; private String nama,prodi; Scanner input = new Scanner (System.in); Scanner inp = new Scanner(System.in); public void cetakid(){ System.out.println("\t Identitas Mahasiswa "); System.out.println("*===========================================*"); System.out.print("* Nama\t\t : "); nama=input.nextLine(); System.out.print("* Program Studi : "); prodi=input.nextLine(); System.out.print("* NIM\t\t : "); nim=input.nextInt(); System.out.print("* Usia\t\t : "); us=input.nextInt(); } } class nama extends tgs1{ public void ctknama(){ super.cetakid(); String [][] data= { {"196207031991031001", "Dr. Ir. Syaad Patmanthara, M.Pd."}, {"197206071999032002", "Dr. Yuni Rahmawati, S.T., M.T."}, {"198002082005011001", "Aripriharta, S.T., M.T., Ph.D."}, {"199012162015041001", "Irham Fadlika, S.T., M.T."}, {"197411111999032001", "Dyah Lestari, S.T., M.Eng."}, {"198902022014042001", "Dila Umnia Soraya, S.Pd., M.Pd." } }; System.out.println ("------------------------------------------------------------------------"); System.out.println("\t\t\t DAFTAR NAMA DOSEN "); System.out.println ("------------------------------------------------------------------------"); System.out.println ("+----------------------------------------------------------------------+"); System.out.println ("| \tNIP\t\t\t| \tNama Dosen\t\t | "); System.out.println ("+----------------------------------------------------------------------+"); for (int i=0; i<data.length; i++){ System.out.print ("\t"+data[i][0]+ "\t|"); System.out.println ( data[i][1]+ ""); } System.out.println ("+---------------------------------------------------------------------+"); } } import java.util.Scanner; class nilai extends nama{ public void ctknilai(){ super.ctknama(); Scanner input = new Scanner (System.in); System.out.print(" Nilai tugas Mahasiswa\t\t: " ); int tug= input.nextInt(); System.out.print(" Nilai UTS Mahasiswa\t\t: " ); int uts= input.nextInt(); System.out.print(" Nilai UAS Mahasiswa\t\t: " ); int uas= input.nextInt(); int rata =(tug+uts+uas)/3; System.out.print(" Nilai Rata-Rata Mahasiswa\t : "+rata); } } public class call { public static void main(String[] args) { System.out.println("\n============================================"); System.out.println("\n\tDAFTAR NILAI MAHASISWA"); System.out.println("\n============================================"); nilai call = new nilai (); call.ctknilai(); System.out.println("\n============================================"); } }

Output Program :

Penjelasan Program : Program tersebut digunakan untuk mengetahui daftar nama dosen, nilai tugas,UTS,UAS dan rata rata nilai berbasis console yang menerapkan konsep inheritance, dalam program tersebut terdapat 4 class, yang terdiri dari class tgs1 yang berfungsi sebagi superclass dan clasnama yang merupakan subclass dari class tgs1. Lalu ada class nilai yang merupakan subclass dari class nama. Lalu class tugaskuliah untuk memanggil method-methodnya. Jika program dijalankan, maka outputnya diawali dengan meninput data seperti nama,program studi,nim 4 digit terakhir dan usia sebagi identitas diri. Lalu akan muncul daftar nama-nama dosen yang mengajar beserta NIP nya. Lalu user menginputkan data lagi berupa nilai tugas,UTS,UAS dan akan muncul nilai rata-ratanya. Program Selesai.


Tugas 2 Pemrograman Java

Nama Program : Menampilkan informasi dalam KTP. Bahasa Pemrogramam : Java Compiler : Sublime Text Source Code : import javax.swing.*; import java.awt.*; import java.awt.event.*; public class tgs2 extends JFrame implements ActionListener { private JLabel label, lNm,lNik,lAlm,lAg,lJk,lSt,lPk,lKw; private JTextField tNm, tNik, tAlm,tAg,tJk,tSt,tPk,tKw; private String isiNm, isiNik, isiAlm, isiAg, isiJk, isiSt,isiPk,isiKw; private JButton bUp, bHps; public tgs2() { super("KARTU TANDA PENDUDUK"); setSize(150,400); setBounds(50, 40, 900, 700); label = new JLabel("ISILAH BIODATA TERSEBUT "); lNm = new JLabel(" Nama"); tNm = new JTextField("", 30); lNik = new JLabel(" NIK"); tNik = new JTextField("", 30); lAlm = new JLabel(" Alamat"); tAlm = new JTextField("", 40); lAg = new JLabel(" Agama"); tAg = new JTextField("", 20); lJk = new JLabel("Jenis Kelamin"); tJk = new JTextField("", 10); lSt = new JLabel(" Status"); tSt = new JTextField("", 30); lPk = new JLabel(" Pekerjaan"); tPk = new JTextField("", 30); lKw = new JLabel("Kewarganegaraan"); tKw = new JTextField("", 30); bUp = new JButton("UPLOAD"); bHps = new JButton("HAPUS"); JPanel panel1 = new JPanel(); JPanel panel2 = new JPanel(); JPanel panel3 = new JPanel(); panel1.add(label); panel2.add(lNm); panel2.add(tNm); panel2.add(lNik); panel2.add(tNik); panel2.add(lAlm); panel2.add(tAlm); panel2.add(lAg); panel2.add(tAg); panel2.add(lJk); panel2.add(tJk); panel2.add(lSt); panel2.add(tSt); panel2.add(lPk); panel2.add(tPk); panel2.add(lKw); panel2.add(tKw); panel2.setLayout(new GridLayout(8,2,-150,10)); panel3.add(bUp); panel3.add(bHps); add("North", panel1); add(panel2); add("South", panel3); bUp.addActionListener(this); bHps.addActionListener(this); setVisible(true); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public void actionPerformed(ActionEvent e) { if(e.getSource()==bUp) { isiNm =tNm.getText(); isiNik =tNik.getText(); isiAlm =tAlm.getText(); isiAg =tAg.getText(); isiJk =tJk.getText(); isiSt =tSt.getText(); isiPk=tPk.getText(); isiKw =tKw.getText(); JOptionPane.showMessageDialog(null, " Nama : "+isiNm+"\n NIK : "+isiNik+"\n Alamat : "+isiAlm+"\n Agama : "+isiAg+"\n Jenis Kelamin: "+isiJk+"\n Status : "+isiSt+"\n Pekerjaan : "+isiPk+"\n Kewarganegaraan: "+isiKw, "KTP", JOptionPane.PLAIN_MESSAGE); } if(e.getSource()==bHps) { tNm.setText(""); tNik.setText(""); tAlm.setText(""); tJk.setText(""); tAg.setText(""); tSt.setText(""); tPk.setText(""); tKw.setText(""); } } public static void main(String[] args) { tgs2 frame = new tgs2(); } }

Output Program :

Penjelasan Program : Program tersebut digunakan untuk menampilkan minimal 5 informasi dari KTP berbasis GUI. Program tersebut menggunakan label, text field, button dan text area, dengan inputan data yang berasal dari user melalui text field.dalam program tersebut juga menggunakan 2 tombol untuk menampilkan data yang diinputkan user atau menghapus data-data yang sudah diinputkan user. Jika program dijalankan maka output yang keluar adalah sebuah frame dengan judul KARTU TANDA PENDUDUK. Di frame tersebut terdapat 2 baris dan 8 kolom serta 2 panel. Lalu user diminta untuk menginputkan beberapa data seperti : nama,NIK,lamat,agama,jenis kelamin, status, pekerjaan dan kewarganegaraan. Jika user ingin menampilkan data yang diinputkan maka user dapat menekan upload. Jika user menekan upload maka akan muncul kotal dialog berjudul KTP yang memuat identitas yang user inputkan tadi. Sedangkan jika user menekan hapus maka data yang sudah diinputkan oleh user akan dihapus. Program selesai.


C. Kesimpulan

1. Inheritance atau Pewarisan/Penurunan adalah konsep pemrograman dimana sebuah class dapat ‘menurunkanproperty dan method yang dimilikinya kepada class lain.

2. Konsep inheritance digunakan untuk memanfaatkan fitur ‘code reuse’ untuk menghindari duplikasi kode program.

3. Kesimpulannya, boleh dikatakan bahwa suatu subclass adalah tidak lain hanya memperluas (extend) parent class-nya.

4. Semakin kebawah, class akan semakin bersifat spesifik.

5. Dengan memanfaatkan konsep pewarisan ini dalam pemrograman, maka hanya perlu mendefinisikan karakteristik yang lebih umum akan didapatkan dari class darimana ia diturunkan.

D. Daftar Rujukan

1. Muhardian, Ahmad. 2017. Belajar Java OOP: Memahami Inheritance dan Method Overriding. Diakses (Online) : https://www.petanikode.com/java-oop-inheritance/ pada tanggal 18 Maret 2020

2. DONY WIJAYA. 2012. JAVA: Pewarisan (Inheritance) pada java & contoh program Inheritance. Diakses ( Online ) : https://doniavira.wordpress.com/2012/04/19/pewarisan-inheritance/ pada tanggal 18 Maret 2020

3. Evaristuk Didik. 2017. INHERITANCE. Diakse ( Online ) : https://sis.binus.ac.id/2017/09/07/inheritance/ pada tanggal 18 Maret 2020

 
 
 

Comments


©2020 Rista Bramastya

bottom of page