Mengakses Anggota Grandparent Java Menggunakan Keyword Super
Mengakses Anggota Grandparent Menggunakan Kata Kunci super
/* filename Main.java */
class Grandparent {
public void Print()
{System.out.println("Grandpar"
+"ent Print()");}
}
class Parent extends Grandparent {
public void Print()
{System.out.println("Parent"
+" Print()");}
}
class Child extends Parent {
public void Print()
{super.super.Print();
// mencoba untuk mengakses
// grandparent Print().
System.out.println("Child"
+" Print()");}
}
public class Main {
public static void main(String[] args) {
Child c = new Child();
c.Print();}
}
/* filename Main.java */
class Grandparent {
public void Print()
{System.out.println("Grandpa"
+"rent Print()");}
}
class Parent extends Grandparent {
public void Print()
{super.Print();
System.out.println("Parent"
+" Print()");}
}
class Child extends Parent {
public void Print()
{super.Print();
System.out.println("Child"
+" Print()");}
}
public class Main {
public static void main(String[] args) {
Child c = new Child();
c.Print();}
}
Parent Print()
Child Print()
Cara Mengakses Anggota Grandparent dengan Metode Bantu
class Grandparent {
void grandparentMethod() {
System.out.println(
"Grandparent method");}
}
class Parent extends
Grandparent {
// Tidak ada implementasi
// khusus di sini
}
class Child extends Parent {
void accessGrandparentMethod()
{
// Mengakses metode
// grandparent melalui kelas
// induk
super.grandparentMethod(); }
}
public class Main {
public static void
main(String[] args) {
Child child = new Child();
// Output: Grandparent method
child.accessGrandparentMethod();}
}
- Konsistensi Struktur Kode: Dengan menggunakan metode bantu, pengembang dapat mempertahankan konsistensi dalam struktur kode program dan mencegah penggunaan kode yang ambigu atau tidak jelas.
- Mudah Dipahami: Metode bantu membuat niat pengembang menjadi jelas. Daripada menggunakan super secara langsung untuk melompati beberapa tingkat pewarisan, metode bantu menyediakan abstraksi yang lebih jelas tentang apa yang dilakukan oleh pemanggilan tersebut.
- Fleksibilitas dalam Perubahan Struktur Pewarisan: Dengan menggunakan metode bantu, pengembang dapat mengubah struktur pewarisan tanpa mempengaruhi cara kelas anak mengakses anggota dari grandparent. Jika struktur pewarisan berubah di masa depan, pengembang hanya perlu memperbarui metode bantu di kelas induk tanpa harus mengubah implementasi di kelas anak yang sudah ada. Ini meningkatkan fleksibilitas dalam pengembangan dan pemeliharaan kode.
- Penggunaan yang Bersih dan Terdokumentasi: Dengan menggunakan metode bantu, penggunaan kode menjadi lebih bersih dan terdokumentasi dengan baik. Pengembang dapat dengan mudah melihat dan memahami bagaimana akses ke anggota grandparent diimplementasikan dalam kelas anak melalui metode bantu yang jelas dan deskriptif. Hal ini membantu dalam memahami niat pengembang dan memperjelas logika yang terlibat dalam akses anggota grandparent.
- Mempertahankan Prinsip Enkapsulasi: Dengan menggunakan metode bantu, pengembang dapat mempertahankan prinsip enkapsulasi dalam pengembangan perangkat lunak. Melalui metode bantu, kelas anak tidak perlu mengetahui secara langsung tentang struktur atau detail implementasi kelas induk atau grandparent. Ini memungkinkan untuk merancang kelas-kelas yang lebih independen dan meminimalkan ketergantungan antar kelas, sehingga meningkatkan isolasi dan keamanan modul.
- Potensi Overhead: Penggunaan metode bantu dapat menyebabkan penambahan overhead dalam kode, terutama jika metode tersebut hanya digunakan untuk mengakses anggota grandparent dalam beberapa kasus tertentu. Overhead ini dapat mengurangi performa aplikasi, meskipun secara umum dampaknya biasanya kecil.
- Kompleksitas Tambahan: Penggunaan metode bantu dapat menambah kompleksitas dalam struktur kode, terutama jika ada banyak metode bantu yang digunakan untuk mengakses anggota dari grandparent dalam berbagai kelas. Ini dapat membuat kode menjadi lebih sulit dipahami dan dipelihara, terutama jika tidak ada dokumentasi yang cukup atau pemahaman yang jelas tentang tujuan masing-masing metode bantu.
- Potensi Pelanggaran Prinsip Enkapsulasi: Jika metode bantu memberikan akses langsung ke anggota privasi dari kelas grandparent, hal ini dapat mengakibatkan pelanggaran prinsip enkapsulasi. Kode yang mengakses langsung anggota privasi dari kelas grandparent mungkin tidak terlalu mandiri atau rentan terhadap perubahan internal dalam kelas tersebut.
- Ketergantungan yang Tidak Diperlukan: Penggunaan metode bantu untuk mengakses anggota grandparent dapat menciptakan ketergantungan yang tidak diperlukan antara kelas anak dan grandparent. Hal ini dapat membuat struktur kelas menjadi lebih rapuh terhadap perubahan, karena setiap perubahan pada grandparent mungkin memerlukan penyesuaian di metode bantu yang ada di kelas anak.
- Pengulangan Kode: Dalam beberapa kasus, penggunaan metode bantu untuk mengakses anggota dari grandparent dapat menyebabkan pengulangan kode yang tidak perlu, terutama jika implementasi metode bantu sama di beberapa kelas. Hal ini dapat mengurangi kejelasan dan keseluruhan pemeliharaan kode.
Kesimpulan
- Object Subclass dan Subclass Java Dan Referensi Superclass
- Overloading dan Inheritance Java dan Fungsinya
- Tipe Operator Java dan Fungsinya
- Operator Aritmatika Java Beserta Penjelasannya
- Operator Unary Java dan Penjelasannya
- Operator Penugasan Java Beserta Contohnya
- Operator Relasional Java Beserta Contohnya
5 komentar untuk "Mengakses Anggota Grandparent Java Menggunakan Keyword Super"
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 -
Ketika melakukan extend class, maka user melakukan perluasan fungsionalitas class yang telah ditentukan pada Java. Namun faktanya, parent class yang extends ke class lain atau dikenal dengan istilah grandparent class adalah bagian dari implementasi yang bukan menjadi urusan dari kode program lain di luar class tersebut.
BalasHapusBagaimana cara mengakses anggota dari grandparent class pada Java?
BalasHapusPada Java, class tidak dapat langsung mengakses anggota grandparent class. Hal tersebut hanya dapat dilakukan pada C++.
Hapusbongkar kode programnya menggunakan compiler trus lihat isi kode dari grandparent class nya, so simple.
Hapusnice info bambang -__-
Hapus