Showing posts with label OOP. Show all posts
Showing posts with label OOP. Show all posts

Saturday, 7 January 2017

Package dalam OOP || WapBlog21 (Konsep Package, Mengatur class ke dalam package, Hak akses dalam packages, Package terpadu, Impor statis)

Tabel Beberapa Paket Java
PaketKeterangan
javax.swingPaket ini berisi kelas-kelas dan interface untuk komponen GUI swing Java yang menyediakan dukungan untuk tampilan grafis yang portabel.
javax.swing.eventPaket ini berisi kelas-kelas dan interfes yang memperbolehkan penanganan event untuk komponent grafis yang terletak di paket javax.swing.
java.langPaket ini berisi kelas-kelas dan interfes yang diperlukan oleh banyak program Java. Paket ini diimpor oleh kompiler ke semua program Java secara otomatis.
java.appletPaket ini berisi kelas-kelas Applet dan juga beberapa interfes yang memperbolehkan interaksi applet dan browser serta untuk memainkan klip audio. Kelas javax.swing.JApplet digunakan untuk menetapkan applet yang menggunakan komponen GUI swing.
java.textPaket ini berisi kelas-kelas dan interfes yang memperbolehkan program Java untuk memanipulasi angka, tanggal, karakter dan juga string.
java.netPaket ini berisi kelas yang memperbolehkan program untuk berkomunikasi melalui jaringan.

Keuntungan menggunakan paket.

Ada kemungkinan, programer Java membuat kelas sendiri yang mempunyai nama sama dengan kelas yang sudah ada di Java API tanpa sengaja. Konflik penamaan kelas bisa saja terjadi. Untuk mengatasi masalah terkait penamaan kelas, Anda dapat meletakkan kelas yang mempunyai nama sama ke dalam paket berbeda dan mengakses kelas tersebut beserta dengan nama paketnya. Kelas-kelas Java yang mempunyai kemiripan fungsi seharusnya diletakkan di paket yang sama sehingga akan mempermudah penempatan dan pendistribusian. Paket juga berfungsi memberi proteksi pada kelas dan interface yang ada di dalamnya. Sebagai contoh, kelas yang dideklarasikan dengan kata kunci private, hanya dapat diakses oleh kelas-kelas lain yang berada dalam paket yang sama.

Direktori paket.

Sebuah paket sebenarnya adalah direktori yang digunakan untuk menyimpan file-file bytecode (file berekstensi .class). Paket Java disusun secara berjenjang (hierarchical). Anda bisa mempunyai paket yang berada di dalam paket lain. Sebagai contoh, javax.swing.JOptionPane menunjukkan bahwa kelas JOptionPane berada di paket swing dan paket swing sendiri berada di paket javax. Level jenjang paket digunakan untuk memastikan keunikan dari nama paket.
Semua kelas yang dibuat akan tersimpan di direktori yang sekarang aktif (current directory atau default package) ketika program sumber Java dikompilasi. Karena program sumber Java terletak di direktori, misalnya c:\hindro\javasc dan proses kompilasi juga dilakukan di direktori tersebut, maka file bytecode hasil kompilasi juga akan tersimpan di direktori yang sama.

Meletakkan kelas ke dalam paket.

Setiap kelas Java akan diletakkan (dikelompokkan) ke dalam paket. Kelas-kelas tersebut diletakkan ke dalam paket saat program sumber Java (Java source program) dikompilasi. Untuk meletakkan sebuah kelas hasil kompilasi ke dalam paket yang dituju, Anda dapat menyertakan pernyataan package diikuti nama paket di program sumber Java. Pernyataan package yang diikuti nama peket adalah pernyataan Java yang paling pertama. Berikut ini adalah sintak pernyataan package untuk meletakkan hasil kompilasi ke dalam paket:
package nama-paket;
Untuk mendemonstrasikan penggunaan pernyataan package di atas, terlebih dahulu Anda dapat membuat direktori baru. Misalnya c:\filejava\javaapp\kelas\bangun\datar adalah direktori yang digunakan untuk menyimpan file bytecode Java (berekstensi .class). Dari direktori tempat menyimpan kelas, Anda dapat menentukan c:\filejava\javaapp\kelas sebagai class path dan bangun\datar sebagai nama paket (package name). Agar Java mengetahui letak kelas yang sudah dibuat di dalam sistem file (file system), Anda perlu memodifikasi nilai variabel CLASSPATH di kotak dialok Edit System Variable.
Modifikasi nilai variabel CLASSPATH dilakukan dengan menambahkan ;c:\filejava\javaapp\kelas ke nilai yang sudah ada di variabel CLASSPATH. Untuk menambahkan beberapa path lain ke dalam nilai variabel CLASSPATH, Anda harus memberikan pemisah berupa titik koma. Umumnya, variabel CLASSPATH sudah terisi dengan dot (.) yang mengacu ke direktori yang sedang aktif (current directory) atau lokasi dari pustaka kelas Java. Berikut ini adalah kotak dialok Edit System Variable dari variabel CLASSPATH:
Contoh program berikut ini berkaitan dengan bangun datar segitiga sama sisi. Rumus keliling segitiga sama sisi ABC adalah sisi AB + sisi BC + sisi CA dan rumus luasnya adalah ½ x alas x tinggi. Kelas bangun datar segitiga sama sisi ini dinamakan Segi3ABC dan mempunyai dua metoda untuk mencari keliling dan luas. Kelas Segi3ABC akan diletakkan ke dalam paket bangun\datar. Berikut ini adalah kode programnya:
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// Meletakkan kelas ke paket
packagebangun.datar;
// Mendefinisikan kelas Segi3ABC
publicclassSegi3ABC {
   // Metoda hitungKeliling
   // Untuk mencari keliling segi tiga
   publicstaticdoublehitungKeliling(doublesisiAB,doublesisiBC, doublesisiCA) {
      doublekeliling;
      keliling = sisiAB + sisiBC + sisiCA;
      returnkeliling;
   }
   // Metoda hitungLuas
   // Untuk mencari luas segi tiga
   publicstaticdoublehitungLuas(doublesisiAB) {
      // Deklarasi variabel
      doubleluas;
      // Mencari tinggi segi tiga
      doubletinggi = Math.sqrt(Math.pow(sisiAB, 2) - Math.pow((0.5* sisiAB), 2));
      // Mencari luas segi tiga
      luas = sisiAB * tinggi;
      returnluas;
   }
}
Kelas Segi3ABC tidak memiliki metoda main dikarenakan kelas ini akan digunakan di program lain yang mempunyai metoda main. Dari kode program di atas, baris nomor 2 adalah pernyataan package yang diikuti oleh nama paket bangun.datar. Pernyataan package di program sumber Java (Segi3ABC.java) digunakan untuk meletakkan file bytecode hasil kompilasi (Segi3ABC.class) ke dalam paket yang sudah ditentukan di pernyataan package.
Baris nomor 24 adalah pernyataan untuk mencari tinggi segitiga sama sisi. Anda dapat menggunakan rumus phytagoras untuk mengetahui tinggi dari segitiga sama sisi. Rumus phytagoras meliputi pencarian akar (√x) dan pemangkatan (x2) dari variabel x. Untuk mencari nilai akar dan pemangkatan, dapat menggunakan metoda statik sqrt dan pow dari kelas Math yang ada di paket java.lang. Math.sqrt(x) sama artinya dengan √x dan Math.pow(x, y) sama artinya dengan xy. Selain metoda sqrt dan pow, kelas Math juga berisi metoda lain untuk melakukan fungsi matematika dasar serta metoda random (Math.random) yang dapat menghasilkan nilai random double lebih besar atau sama dengan 0.0 dan lebih kecil dari 1.0 (0 <= Math.random() < 1.0).
Ada dua cara untuk mengkompilasi program sumber Java agar file berekstensi .class hasil dari kompilasi dapat diletakkan di paket yang sudah ditentukan sebagaimana di dalam pernyataan package. Cara pertama, Anda harus menyimpan file program sumber (file berekstensi .java) di direktori c:\filejava\javaapp\kelas\bangun\datar. Sebelum proses kompilasi dilakukan, Anda terlebih dahulu harus berada di direktori dimana paket bangun\datar berada. Cara kedua, Anda dapat mengkompilasi program sumber Java yang terletak di sebuah direktori dan meletakkan hasil kompilasi di direktori (paket) tertentu melalui c prompt (c:\>).
Untuk menggunakan cara yang pertama, file program sumber Java (Segi3ABC.java) harus disimpan di folder atau direktori c:\filejava\javaapp\kelas\bangun\datar. Karena di program sumber tersebut sudah terdapat pernyataan package bangun.datar, sebelum dikompilasi, Anda cukup berada di direktori c:\filejava\javaapp\kelas. Kompilasi dapat dilakukan dengan menuliskan perintah seperti di bawah ini di baris perintah pada jendela Command Prompt.
javac bangun\datar\Segi3ABC.java
Setelah proses kompilasi selesai, Anda harus pastikan bahwa file bytecode yang berekstensi .class (Segi3ABC.class) sudah berada di direktori c:\filejava\javaapp\kelas\bangun\datar. Kompiler Java dapat mengetahui tempat untuk meletakkan file hasil kompilasi dengan mengkombinasikan classpath c:\filejava\javaapp\kelas dengan nama paket bangun.datar.
Umumnya, programer Java memilih untuk meletakkan file program sumber (berekstensi .java) dan file hasil kompilasi (berekstensi .class) di direktori berbeda. Hal ini dimaksudkan untuk mempermudah proses pendistribusian paket yang hanya berisi kelas-kelas hasil kompilasi. Anda juga dapat mengelola file dengan cara demikian. Misalnya, Anda membuat direktori c:\filejava\javaapp\sumber\bangun\datar sebagai tempat menyimpan file program sumber, sedangkan tempat untuk menyimpan file hasil kompilasi, Anda dapat menggunakan direktori c:\filejava\javaapp\kelas\bangun\datar. Untuk mengkompilasi file program sumber melalui c prompt (c:\>), Anda dapat menuliskan perintah seperti di bawah ini.
c:\>javac –d filejava\javaapp\kelas filejava\javaapp\sumber\bangun\datar\Segi3ABC.java
-d memberitahukan kepada kompiler Java untuk meletakkan file kelas hasil mengkompilasi (Segi3ABC.class) ke direktori c:\filejava\javaapp\kelas\bangun\datar. Setelah kompilasi file sumber selesai dilakukan dan tidak terdapat kesalahan, Anda dapat memastikan bahwa file hasil kompilasi sudah berada di direktori c:\filejava\javaapp\kelas\bangun\datar.
Kelas Segi3ABC yang tersimpan di direktori c:\filejava\javaapp\kelas\bangun\datar dapat dipanggil dengan menggunakan pernyataan import sebagaimana kelas-kelas Java lain. Contoh program berikut ini akan menggunakan kelas Segi3ABC yang sudah didefinisikan sebelumnya untuk menghitung keliling dan luas segitiga sama sisi. Segitiga sama sisi mempunyai panjang sisi yang sama yaitu 9 cm. Berikut ini adalah kode program, penjelasan dan hasil eksekusi program:
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
// Nama file : SegitigaSamaSisi.java
// Menghitung keliling dan luas segitiga
// Mengimpor kelas
importjavax.swing.JOptionPane;
importjava.text.DecimalFormat;
importbangun.datar.Segi3ABC;
// Deklarasi kelas
publicclassSegitigaSamaSisi {
   // Metoda main
   publicstaticvoidmain(String[] args) {
      // Deklarasi variable
      doublekeliling;
      doubleluas;
      doublesisi = 9;
      String hasil= "";
      DecimalFormat formatAngka;
      // Membuat objek dari kelas DecimalFormat
      formatAngka =newDecimalFormat("0.00");
      hasil += "Segitiga Sama Sisi\n\nPanjang sisi : "+ sisi +"\n\n";
      keliling = Segi3ABC.hitungKeliling(999);
      hasil += "Keliling Segitiga ABC : "+ formatAngka.format(keliling) + "\n";
      luas = Segi3ABC.hitungLuas(9);
      hasil += "Luas Segitiga ABC : "+ formatAngka.format(luas) + "\n";
      JOptionPane.showMessageDialog(null, hasil, "Menghitung Keliling dan Luas",
         JOptionPane.INFORMATION_MESSAGE);
      // Mengakhiri aplikasi berpenampilan GUI
      System.exit(0);
   }
Baris nomor 7 adalah pernyataan untuk mengimpor kelas Segi3ABC yeng terletak di paket bangun.datar. Kelas Segi3ABC merupakan kelas yang didefinisikan oleh pengguna aplikasi (user-defined class) dan bukan termasuk ke dalam Java predefined class yang terletak di pustaka kelas Java. Baris nomor 27 adalah pernyataan pemberian (assigment statement). Di dalam pernyataan ini, metoda hitungKeliling kelas Segi3ABC yang berada di paket bangun.datar dipanggil. Metoda hitungKeliling akan mengembalikan nilai keliling segitiga dengan tipe data double untuk diberikan atau disimpan ke variabel keliling.
Baris nomor 30 adalah juga pernyataan pemberian nilai. Di dalam pernyataan pemberian nilai ini, metoda hitungLuas kelas Segi3ABC yang tersimpan di paket bangun.datar dipanggil. Metoda hitungLuas akan mengembalikan nilai luas segitiga dengan tipe data double untuk disimpan di variabel luas. Baris nomor 33 adalah pernyataan untuk menampilkan hasil mencari keliling dan luas dengan menggunakan metoda hitungKeliling dan hitungLuas kelas Segi3ABC.
Sumber : http://www.termasmedia.com/

Kaji Lebih Dalam Tentang Polymorphism || WapBlog21

Mari Mengenal Lebih Dalam Tentang OOP


Belajar OOP | Wapblog21

Polymorphism sebuah kata dari bahasa Yunani yang mempunyai arti banyak bentuk. Dua objek atau lebih dikatakan sebagai polymorphic bila kedua objek tersebut mempunyai (interface) antarmuka identik namun mempunyai perilaku yang berbeda. Dalam pemrograman, polimorpism dapat diartikan sebagai modul yang memiliki nama sama, namun memiliki behaviour yang berbeda sehingga listing code implementasinya juga berbeda. Kondisi yang harus dipenuhi supaya polimorfisme dapat diimplementasikan adalah :
  • Method yang dipanggil harus melalui variabel dari basis class atau superclass.
  • Method yang dipanggil harus juga menjadi method dari basis class.
  • Signature method harus sama baik pada superclass maupun subclass.
  • Method access attribute pada subclass tidak boleh lebih terbatas dari basis class.
Program :
___________________________________________________________
Class Bentuk:
package Polymorphism;
abstract class Bentuk{
protected int panjang;
protected int lebar;
public String getBentuk(){
return “Bentuk Dasar”;
}
public abstract int hitungLuas();
}
___________________________________________________________
Class BujurSangkar:
package Polymorphism;
class BujurSangkar extends Bentuk {
public BujurSangkar(int panjang1, int lebar1) {
this.panjang = panjang1;
this.lebar = lebar1;
}
public String getBentuk() {
return “Bentuk Bujur Sangkar”;
}
public int hitungLuas() {
return panjang*lebar;
}
}
____________________________________________________________
Class SegiTiga:
package Polymorphism;
class SegiTiga extends Bentuk {
public SegiTiga(int panjang2, int lebar2) {
this.panjang = panjang2;
this.lebar = lebar2;
}
public String getBentuk() {
return “Bentuk Segitiga”;
}
public int hitungLuas() {
return this.panjang*this.lebar/2;
}
}
______________________________________________________________
Class Polymorphism:
package Polymorphism;
class SegiTiga extends Bentuk {
public SegiTiga(int panjang2, int lebar2) {
this.panjang = panjang2;
this.lebar = lebar2;
}
public String getBentuk() {
return “Bentuk Segitiga”;
}
public int hitungLuas() {
return this.panjang*this.lebar/2;
}
}
_________________________________________________________
Output:
Bentuk Bujur Sangkar dengan luas 100
Bentuk Segitiga dengan luas 25
_________________________________________________________
Kesimpulan Program:
Bentuk diatas terdiri dari 2 bentuk, yaitu bentuk bujur sangkar dan bentuk segitiga, mereka mempunyai Interface yang sama (panjang dan lebar), meskipun mereka mempunyai interface yang sama akan tetapi mereka mempunyai jumlah luas/perhitungan luas yang berbeda (behavior), Konsep ini juga sering disebut Interface banyak aksi.

Monday, 19 December 2016

Syntax Membalik Kata pada C++ || WapBlog21

Berhubung saya sendiri ada tugas akhir tahun, maka saya pun membuat program salah satunya yaitu program membalikkan kata. Semisal :
 - Saya menginput kata : Cumi
- Maka output yang keluar adalah : imuC

Cukup sederhana bukan ? Ya memang bisa di bilang mudah, tetapi dalam waktu mendesak, syntax tersebut mungkin tidak terfikirkan oleh kita . Oke langsung saja kita menuju codingan . Kali ini saya mengaplikasikan dalam bahasa pemrograman C++ dan dengan text editor Code Blocks.

Simak dan Pahami syntax tersebut !



Penjelasan :

  • Apa itu Void ?  
    • Di dalam C++, Fungsi void sering disebut juga prosedur . Disebut void karena fungsi tersebut tidak mengembalikan suatu nilai keluaran yang didapat dari hasil proses fungsi tersebut. Dan tidak adanya tipe data di dalam deklarasi fungsi. Sehingga void tidak akan menambah atau mengurangi inputan.
  • Apa itu Getch() ?
    • Perhatikan header tersebut . Fungsi getch() harus berada dalam header <conio.h>
    • Fungsinya hampir sama dengan break , untuk menahan proses yang sedang berjalan
    • getch merupakan kepanjangan dari "Get Character" dengan fungsi membaca inputan
  • Apa fungsi gets() ? 
    • Fungsinya yaitu untuk memasukan data bertipe karakter dan tidak dapat digunakan untuk memasukan data numerik(integer)
  • Mengapa menggunakan strlen ? Fungsi
    • Fungsi strlen() yang digunakan untuk menghitung panjang kata. Lalu di kombinasikan dengan perulangan. Semisal kita membuat Descending pada program dengan tipe data karakter.



Mungkin cukup disini penjelasan mengenai Membolak balik kata, kurang dan lebihnya saya mohon maaf . Disini saya hanya ingin berbagi saja karena memang berbagi itu indah :)
Jangan lupa untuk meng-share ke teman teman anda semua . 

Copas ? Sertakan Sumber dengan jelas !


Friday, 4 November 2016

Yuk Belajar OOP || Enkapsulasi data atau Information Hidding

Bagi kalian yang ingin mendalami tentang Object Oriented Programming atau Pemrograman Berorientasi Objek pasti akan mengalami yang namanya Encapsulation atau menyembunyikan informasi.

Pengertian : 

Enkapsulasi merupakan salah satu sifat dari PBO. Secara bahasa enkapsulasi berarti pengkapsulan sebuah data.
Contoh : Seperti obat yang berbentuk Kapsul, tujuan dibentuknya kapsul ini untuk melindungi isi obat yang ada di dalam kapsul agar tidak mudah rusak. Ini pun tidak berbeda jauh dengan enkapsulasi yang berada di Java.

Enkapsulasi sendiri lebih tepatnya pengemasan dan penyembunyian suatu informasi. Dari sinilah enkapsulasi dikenal juga dengan istilah information hidding.

- Information Hidding adalah menyembunyikan attribute dan method suatu objek dari objek lain.
- Encapsulation adalah menyembunyikan attribute suatu objek dari objek lain.
- Attribute maupun method disembunyikan dengan cara memberikan modifer Private.

Method

- Method Setter : Method dalam kelas yang sama yang memberikan nilai pada attribute private.
- Method Getter : Method masih dalam kelas yang sama yang mengambil nilai dari attribute private.

Keuntungan :

1. Objek dan bagian bagian di dalamnya dapat fleksibel untuk dipindahkan.
2. Objek dapat dilindungi dari pengaksesan yang tidak di perkenankan.
3. Objek lebih kohesi, sehingga dapat bekerja dengan lebih independen.

Contoh Syntax Java 

public class Kapsul{
           String nama;
           String jumlah;

           public String getNama() {
                  return nama;
          }
          public void setNama(String nama) {
                  this.nama = nama;
          }
         
          public String getJumlah() {
                  return jumlah;
          }
          public void setJumlah(String jumlah) {
                  this.jumlah = jumlah;
          }

public static void main(String[] args) {
          Kapsul kap = new Kapsul();

          kap.setNama("Fahri");
          kap.setJumlah("Satu");

          System.out.println("Ambil Nama : " + kap.getNama());
          String jum = kap.getJumlah();
          System.out.println("Ambil Jumlah : " + jum);



Outputnya :

Ambil Nama : Fahri
Ambil Jumlah : Satu

Mungkin sampai disini dulu artikel dari saya. Intinya pengemasan ini bertujuan agar method tidak terlihat dari luar dan mengamankan yang berada di dalamnya. Semoga bisa bermanfaat dan jangan lupa untuk Share artikel ini.

Jangan Lupa baca juga : 6 hal yang sering di acuhkan Programmer

Thursday, 3 November 2016

Mengenal Lebih Dalam Apa itu Constructor & Inheritance ?

Tujuan dibuatnya Artikel ini agar dapat membuat objek baru dari pengembangan objek yang telah ada . Dan kalian harus ingat , bahwa seorang Programmer wajib "Ngulik" atau wajib bereksperimen.
Materinya antara lain : Constructor (single & multiple constructor), Inheritance (superclass, subclass)


Apa itu Constructor ?

- Constructor adalah method yang secara otomatis dipanggil/ dijalankan pada saat sebuah class diinstansi. 
- Nama constructor harus sama dengan nama class dan tidak boleh memiliki tipe return value.
- Sama halnya dengan method, constructor dapat memiliki satu atau banyak parameter maupun tanpa parameter. 
- Constructor biasanya digunakan untuk memberi nilai awal dari atribut-atribut class tersebut. 

Apa itu Multiple Constructor ?
- Java tidak membatasi jumlah constructor dalam satu class, sehingga memungkinkan sebuah class memiliki lebih dari satu constructor.
- Multiple constructor adalah adanya lebih dari satu contructor untuk sebuah class.
- Yang membedakan antara satu constructor dengan constructor lainnya adalah pada parameternya (nama constructornya sama).

Contoh: 

     class Login {
              private String nama, paswd; Login() {
                          this.nama = “”; this.paswd = “”;  
                          }
                          Login(String nama, String paswd){
                          this.nama = nama; this.paswd = paswd;
                          }
                          public void setNama(String nama){
                          this.nama = nama
                          }
                          public void setPaswd(String paswd){
                          this.paswd = paswd;
                          }
              }

Apa itu Inheritance?

- Inheritance merupakan proses pewarisan data dan method dari suatu class yang telah ada kepada suatu class baru.
- Class yang mewariskan disebut dengan superclass / parent class / base class. 
- Class yang mewarisi (class yang baru) disebut dengan subclass / child class / derived class.
- Subclass tidak dapat mewarisi anggota private dari superclass-nya.
- Dengan inheritance, class yang baru (subclass) akan mirip dengan class yang lama (superclass) namun memiliki karakteristik yang baru.
- Dalam Java, subclass hanya bisa memiliki satu superclass (single inheritance) sedangkan superclass bisa memiliki satu subclass atau lebih.
- Untuk menerapkan inheritance, gunakan statement “extends”.  namaSubclass extends namaSuperclass {  ......... // definisi class  } 


Keyword “super” digunakan oleh subclass untuk memanggil constructor atau method yang ada pada superclass-nya.
 Contoh untuk memanggil constructor milik superclass-nya : super()  super(parameter)
 Contoh untuk memanggil method milik superclass-nya : super.namaMethod(parameter)

Contoh: 

           class Orang {
                    private String nama; private double tinggi; private double berat;  public Orang (String nama, double tinggi, double berat) {
                    this.nama = nama; this.tinggi = tinggi; this.berat = berat;
                   }
                   public String toString() {
                   return ("Nama : "+nama+"\nTinggi :"+ tinggi + "\nBerat : "+berat);
                   }
          }


           class Pelajar extends Orang {
                    private String nis; private String asalSekolah; private double nilai; // range: 0-30  public Pelajar (String nama, double tinggi, double berat, String nis, String sekolah, double nilai) {
                    super(nama,tinggi,berat);  this.nis = nis; asalSekolah = sekolah; this.nilai = nilai;
                    }
                    public String toString() {
                    return (super.toString()+"\nNIS :"+nis+ "\nSekolah : "+asalSekolah+"\nNilai :“+nilai);                     }
             }

             class LatihanInheritance {
                      public static void main(String[] args) {
                                 Pelajar siswa = new Pelajar("Fahri",168, 52,"11504871","SMK Wikrama",27.8); System.out.println(siswa.toString());
                      }
             }

 Jalankan LatihanInheritance.java dan akan dihasilkan output sebagai berikut :

------------------------Configuration : <Default>-------------------------
Nama : Fahri
Tinggi : 168.0
Berat : 52.0
NIS : 11504871
Sekolah : SMK Wikrama

Jangan Lupa Visit Juga Blog  : kangmasjm.wordpress.com

Baca Juga Part II Constructor & Inheritance disini