Lompat ke konten Lompat ke sidebar Lompat ke footer

Membuat Object Java dari Class Turunan dan Fungsinya

Dalam konsep pewarisan atau inheritancesubclass mengakuisisi properti super class pada Java. Point penting yang harus dicatat adalah ketika subclass object diciptakan, maka sebuah object yang terpisah dari object super class tidak akan diciptakan pada Java, dan hanya sebuah subclass object yang memiliki variabel class yang akan diciptakan.


Sebelum lebih lanjut mempelajari materi tentang cara Membuat Object Java dari Class Turunan dan Fungsinya, terlebih dahulu pelajari materi tentang: Static dan Dynamic Binding Java dan Fungsinya, Java Bukan Pemrograman Berorientasi Objek Murni dan Alasannya, dan Multiple Inheritance Java dan Fungsinya.

Dalam pemrograman berorientasi objek, pewarisan adalah salah satu konsep fundamental yang memungkinkan kelas baru (kelas turunan) untuk mewarisi sifat-sifat dan perilaku dari kelas yang sudah ada (kelas induk). Setelah mendefinisikan kelas turunan, pengembang dapat membuat objek dari kelas tersebut. Artikel ini akan menjelaskan cara membuat objek Java dari kelas turunan dan menguraikan fungsinya dalam pengembangan perangkat lunak.

Langkah-langkah Membuat Objek dari Kelas Turunan

Berikut adalah langkah-langkah umum untuk membuat objek Java dari kelas turunan:
  • Definisikan Kelas Turunan: Pengembang perlu mendefinisikan kelas turunan dengan menggunakan kata kunci extends diikuti oleh nama kelas induk. Misalnya, jika pengembang ingin membuat kelas turunan bernama ChildClass dari kelas induk ParentClass, yang akan didefinisikan sebagai berikut:
    • public class ChildClass extends ParentClass {/* Definisi kelas turunan di sini */}
  • Instansiasi Objek: Setelah mendefinisikan kelas turunan, pengembang dapat membuat objek dari kelas tersebut dengan menggunakan kata kunci new diikuti oleh nama kelas turunan dan parameter konstruktor yang sesuai, jika ada. Misalnya: ChildClass obj = new ChildClass();, Ini akan membuat sebuah objek dari kelas ChildClass.
  • Akses Metode dan Variabel: Setelah membuat objek, pengembang dapat mengakses metode dan variabel yang diwarisi dari kelas induk maupun yang ditambahkan di kelas turunan. Ini memungkinkan untuk menggunakan fungsionalitas yang ada dan menambahkan fungsionalitas tambahan sesuai kebutuhan aplikasi.

Situasi tersebut berbeda dari sebuah asumsi normal bahwa sebuah pemanggilan constructor bermakna object dari class telah diciptakan, sehingga tidak dapat diasumsikan bahwa kapanpun sebuah class constructor dieksekusi maka object dari class telah diciptakan atapun juga tidak.

Contoh:

// Sebuah program Java

// mendemonstrasikan bahwa

// kedua super class dan

// subclass constructor

// mengacu pada object yang

// sama.

 

/* super class */

class Fruit 

public Fruit() 

{System.out.println("Super"

+" class constructor"); 

 

System.out.println("Super"

+" class object hashcode :" 

+this.hashCode());

 

System.out.println(this.getClass().getName());} 

 

/* sub class */

class Apple extends Fruit 

public Apple() 

{System.out.println("Subclass"

+" constructor invoked"); 

 

System.out.println("Sub class"

+" object hashcode :" 

+this.hashCode());

 

System.out.println(this.hashCode() 

+" "

+super.hashCode()); 

 

System.out.println(this.getClass().getName() 

+" "

+super.getClass().getName());} 

 

/* driver class */

public class Test 

public static void main(String[] args

{Apple myApple = new Apple();} 

}

Output:
super class constructor 
super class object hashcode :366712642
Apple
sub class constructor 
sub class object hashcode :366712642
366712642   366712642
Apple  Apple

Seperti contoh program sebelumnya dapat diperhatikan bahwa kedua object class super (Fruit) hashcode dan subclass (Apple) object hashcode adalah sama, sehingga hanya satu object saja yang diciptakan. Object ini adalah object dari class Apple (subclass), dimana pada contoh program dicoba untuk dilakukan pencetakkan nama dari class yang telah diciptakan, dengan hasil program akan mencetak Apple yang merupakan subclass.

Baca Juga:

Fungsi-fungsi Membuat Objek dari Kelas Turunan

Membuat objek dari kelas turunan memiliki beberapa fungsi penting dalam pengembangan perangkat lunak:
  • Pemakaian Kode yang Dapat Digunakan Kembali: Dengan mewarisi sifat-sifat dan perilaku dari kelas induk, kelas turunan dapat menggunakan kode yang sudah ada tanpa perlu menuliskan ulang. Ini mengurangi duplikasi kode dan membuat kode lebih mudah dipelihara.
  • Peningkatan Fleksibilitas: Dengan membuat objek dari kelas turunan, pengembang dapat menggunakan polimorfisme untuk memperlakukan objek tersebut sebagai objek dari kelas induk atau kelas turunan, tergantung pada konteksnya. Ini meningkatkan fleksibilitas dalam desain dan implementasi aplikasi.
  • Penambahan Fungsionalitas Tambahan: Selain mewarisi sifat-sifat dari kelas induk, kelas turunan juga dapat menambahkan fungsionalitas tambahan sesuai kebutuhan aplikasi. Ini memungkinkan untuk mengkustomisasi perilaku objek tanpa mengubah kode yang sudah ada.

Contoh Penggunaan

Mari lihat contoh sederhana bagaimana membuat objek dari kelas turunan dalam Java:

// Definisikan kelas induk

class ParentClass {

void display() {       System.out.println("Ini adalah 

kelas induk.");}

}


// Definisikan kelas turunan

class ChildClass extends 

ParentClass {

void display() {        System.out.println("Ini adalah 

kelas turunan.");}

}


public class Main {

public static void 

main(String[] args) {

// Buat objek dari

// kelas turunan

ChildClass obj = new 

ChildClass();

        

// Panggil metode

// dari kelas turunan


obj.display(); 

// Output: Ini adalah

// kelas turunan.

}

}

Berdasarkan contoh yang diperlihatkan sebelumnya, pengembang membuat objek dari kelas ChildClass yang mewarisi metode display() dari kelas induk ParentClass. Meskipun display() diwarisi dari kelas induk, pengembang dapat menggantinya di kelas turunan untuk menghasilkan output yang berbeda.

Meskipun pembuatan objek dari kelas turunan memiliki banyak fungsi yang bermanfaat, terdapat juga beberapa kekurangan yang perlu dipertimbangkan:
  • Kompleksitas Hubungan Antara Kelas: Semakin dalam hierarki pewarisan, semakin kompleks hubungan antara kelas-kelas. Hal ini dapat membuat pemahaman terhadap struktur program menjadi sulit, terutama dalam proyek-proyek besar yang melibatkan banyak kelas.
  • Keterbatasan Perubahan: Jika sebuah kelas induk mengalami perubahan, ini dapat berdampak pada kelas-kelas turunan yang bergantung padanya. Perubahan ini dapat memerlukan pembaruan besar dalam struktur pewarisan, yang dapat mempengaruhi banyak bagian dalam kode.
  • Ambiguitas atau Konflik Nama: Dalam situasi dimana kelas turunan memiliki metode atau variabel dengan nama yang sama seperti kelas induk atau kelas turunan lainnya, dapat terjadi ambiguitas atau konflik nama. Hal ini dapat menyebabkan kesulitan dalam memahami dan memelihara kode.
  • Penggunaan Memori yang Lebih Besar: Setiap objek yang dibuat dari kelas turunan akan menyimpan informasi dari kelas induknya juga. Ini dapat mengakibatkan penggunaan memori yang lebih besar, terutama jika terdapat banyak objek yang dibuat dari kelas-kelas turunan yang kompleks.
  • Ketergantungan yang Tinggi: Ketika kelas-kelas turunan terlalu tergantung pada kelas induknya, maka setiap perubahan pada kelas induk dapat mempengaruhi banyak bagian dalam aplikasi. Ini meningkatkan ketergantungan dan membuat perubahan menjadi lebih berisiko.
  • Kekurangan Polimorfisme yang Lebih Luas: Dalam beberapa kasus, keterbatasan dari pewarisan dapat mengakibatkan kurangnya polimorfisme yang lebih luas. Polimorfisme yang luas memungkinkan penggunaan objek dari kelas turunan sebagai objek dari kelas induk tanpa kehilangan fungsionalitas. Hal ini dapat membatasi fleksibilitas dan kemampuan untuk memanfaatkan polimorfisme dalam desain dan implementasi aplikasi.

Meskipun memiliki kekurangan-kekurangan ini, dengan perencanaan yang baik dan pemahaman yang mendalam tentang struktur pewarisan, kebanyakan dari kekurangan-kekurangan ini dapat diminimalkan atau diatasi.

Kesimpulan

Membuat objek dari kelas turunan adalah langkah penting dalam pemrograman berorientasi objek yang memungkinkan penggunaan kode yang dapat digunakan kembali, peningkatan fleksibilitas, dan penambahan fungsionalitas tambahan. Dengan pemahaman yang baik tentang konsep ini, pengembang dapat merancang dan mengimplementasikan hierarki kelas yang efisien dan mudah dipelihara dalam aplikasi Java.

Referensi Tambahan:

Artikel ini didedikasikan kepada: Aprillia Puteri Pradana, Arum Galuh Saputri, Aulia El Vaneza, Azzam Fattahulhaq Santoso, dan Cicik Munfarida.

5 komentar untuk "Membuat Object Java dari Class Turunan dan Fungsinya"

  1. Bagaimana membuat inheritance object pada Java?

    BalasHapus
    Balasan
    1. Pada inheritance Java, subclass memperoleh properti dari super class. Hal penting yang perlu diperhatikan adalah ketika object subclass dibuat, maka object yang terpisah dari super class tidak akan dibuat dan hanya object subclass yang dibuat yang memiliki variabel super class.

      Hapus
  2. Apa yang dimaksud dengan inheritance Java?

    BalasHapus
    Balasan
    1. Inheritance merupakan proses pembuat class baru yang disebuat sebagai class turunan, dari class yang sudah ada, yang disebut sebagai base class.

      Hapus
    2. Sederhananya inheritance itu artinya adalah pewarisan, dimana yang diwariskan dalam hal ini adalah isi dari class utama ke class turunannya. Ibarat bapak yang mewariskan sifatnya ke seorang anak.

      Hapus

Hubungi admin melalui Wa : +62-896-2414-6106

Respon komentar 7 x 24 jam, mohon bersabar jika komentar tidak langsung dipublikasi atau mendapatkan balasan secara langsung.

Bantu admin meningkatkan kualitas blog dengan melaporkan berbagai permasalahan seperti typo, link bermasalah, dan lain sebagainya melalui kolom komentar.

- Ikatlah Ilmu dengan Memostingkannya -
- Big things start from small things -