Inheritance dan Constructor Java dan Fungsinya
Pewarisan dalam Java
// Definisikan kelas induk
class Parent {
// Variabel dan
//metode kelas induk
}
// Definisikan kelas turunan
class Child extends Parent {
// Variabel dan
//metode kelas turunan
}
Konstruktor dalam Java
class MyClass {
int x;
// Konstruktor tanpa parameter
MyClass() {x = 0;}
// Konstruktor dengan
// parameter
MyClass(int num) {
x = num;}
}
Hubungan antara Pewarisan dan Konstruktor dalam Java
class MyClass {
int x;
// Konstruktor tanpa parameter
MyClass() {x = 0;}
// Konstruktor dengan
// parameter
MyClass(int num) {
x = num;}
}
/* filename: Main.java */
class Base {
Base() {
System.out.println("Base" +"Class Constructor"
+" dipanggil");
}
}
class Derived extends Base {
Derived() {
System.out.println("Derived"
+" Class Constructor"
+" dipanggil");
}
}
public class Main {
public static void main(String[] args) {
Derived d = new Derived();
}
}
Derived Class Constructor dipanggil
/* filename: Main.java */
class Base {
int x;
Base(int _x)
{x = _x;}
}
class Derived extends Base {
int y;
Derived(int _x, int _y)
{super(_x); y = _y;}
void Display()
{System.out.println("x ="
+x
+", y = "
+y);}
}
public class Main {
public static void main(String[] args) {
Derived d = new Derived(10, 20);
d.Display();}
}
- Penggunaan Kembali Kode: Pewarisan memungkinkan untuk menggunakan kembali kode yang sudah ada dalam kelas induk tanpa perlu menuliskan ulang kode yang sama di kelas turunan. Ini mengurangi duplikasi kode dan membuat kode lebih mudah dipelihara.
- Inisialisasi Objek: Konstruktor digunakan untuk menginisialisasi objek yang dibuat dari sebuah kelas dengan nilai awal yang sesuai. Ini memastikan bahwa objek memiliki nilai yang valid sebelum digunakan dalam aplikasi.
- Penyediaan Konteks yang Konsisten: Dengan menggunakan konstruktor kelas induk, pengembang dapat memastikan bahwa objek dari kelas turunan memiliki konteks yang konsisten dengan objek dari kelas induknya. Ini membantu dalam memastikan bahwa objek tersebut dapat digunakan dengan benar dalam aplikasi.
- Ketergantungan Terhadap Struktur Pewarisan: Penggunaan pewarisan yang terlalu dalam atau kompleks dapat menghasilkan ketergantungan yang tinggi antar kelas. Hal ini dapat membuat perubahan pada kelas induk mempengaruhi banyak kelas turunan, dan sebaliknya. Ini meningkatkan risiko kesalahan dan membuat pemeliharaan menjadi lebih sulit.
- Kompleksitas Hubungan Antara Kelas: Semakin dalam hierarki pewarisan, semakin kompleks hubungan antara kelas-kelas. Hal ini dapat menyulitkan pemahaman terhadap struktur program, terutama dalam proyek-proyek besar yang melibatkan banyak kelas.
- Konflik dan Ambiguitas: Dalam situasi di mana kelas turunan memiliki metode atau variabel dengan nama yang sama seperti kelas induk atau kelas turunan lainnya, dapat terjadi konflik atau ambiguitas. Ini menyulitkan dalam memahami kode dan memperbaiki masalah yang muncul.
- Pembatasan Penggunaan Polimorfisme: Penggunaan konstruktor kelas induk dalam konstruktor kelas turunan dapat menghasilkan kode yang kurang fleksibel terkait dengan polimorfisme. Hal ini karena konstruktor kelas induk harus dipanggil terlebih dahulu dalam konstruktor kelas turunan, yang dapat membatasi kemampuan untuk memanfaatkan polimorfisme sepenuhnya.
- 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.
- Keterbatasan dalam 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.
Kesimpulan
- Method Class Derived Java dan Fungsinya
- Parent dan Child Class Java Dengan Anggota Data Sama
- Object Serialisasi Java Terhadap Inheritance
- Object Subclass dan Subclass Java Dan Referensi Superclass
- Overloading dan Inheritance Java dan Fungsinya
- Tipe Operator Java dan Fungsinya
- Operator Aritmatika Java Beserta Penjelasannya
5 komentar untuk "Inheritance dan Constructor Java dan Fungsinya"
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 -
Derived Java class dapat memanggil constructor pada class dasarnya menggunakan keyword super. Faktanya, constructor dalam class turunan harus memanggil constructor super kecuali konstructor default telah tersedia untuk kedua class tersebut. Constructor juga membutuhkan dua parameter, nama depan, dan nama belakang.
BalasHapusApa yang dimaksud dengan derived class construtor pada Java?
BalasHapusConstruktor dari derived class menerima seluruh daftar nilai yang diperlukan sebagai nilai argumennya dan meneruskannya ke constructor dasar dalam urutan dimana akan dideklarasikan dalam class turunannya. Sebuah constructor class dasar dipanggil dan dijalankan sebelum mengeksekusi statement dari body derived class.
HapusApa tujuan dari pembuatan constructor pada Java?
BalasHapusTujuan dari pembuatan constructor pada Java adalah untuk menginisialisasi object class. Constructor tidak bisa bersifat abstract, final, static.
Hapus