Anda di halaman 1dari 4

Rachma Yunita 1401080100 03-PCM Programming Inheritance- Interface

Definisi INHERITANCE (Pewarisan) Inheritance adalah konsep pemrograman berorientasi object yang memungkinkan membuat hubungan di mana ada class yang mewarisi semua attribute dan method dari class lain. Class baru yang lebih spesifik disebut subclass atau class turunan, sedangkan class yang diturunkan disebut superclass Java Platform Kelas Hirarki Didalam Object kelas, didefinisikan dalam java.lang package, mendefinisikan dan menerapkan perilaku umum untuk semua kelas.. Pada platform Java, banyak kelas yang berasal langsung dari Object , kelas-kelas lain berasal dari beberapa kelas-kelas, dan seterusnya, membentuk hirarki kelas.

Semua Kelas di Jawa Platform Keturunan dari Obyek Pada puncak hirarki, Object adalah yang paling umum dari semua kelas. Kelas dekat bagian bawah hirarki memberikan perilaku yang lebih khusus. Contoh Inheritance (Pewarisan) Berikut adalah contoh untuk implementasi dari sebuah Bicycle kelas yang disajikan dalam Kelas dan pelajaran Objects: public class Bicycle { // the Bicycle class has // three fields public int cadence; public int gear; public int speed; // the Bicycle class has // one constructor public Bicycle(int startCadence, int startSpeed, int startGear) { gear = startGear; cadence = startCadence; speed = startSpeed; } // the Bicycle class has // four methods public void setCadence(int newValue) {

cadence = newValue; } public void setGear(int newValue) { gear = newValue; } public void applyBrake(int decrement) { speed -= decrement; } public void speedUp(int increment) { speed += increment; } } Sebuah deklarasi kelas untuk MountainBike kelas yang merupakan subclass dari Bicycle public class MountainBike extends Bicycle { // the MountainBike subclass adds // one field public int seatHeight; // the MountainBike subclass has one // constructor public MountainBike(int startHeight, int startCadence, int startSpeed, int startGear) { super(startCadence, startSpeed, startGear); seatHeight = startHeight; } // the MountainBike subclass adds // one method public void setHeight(int newValue) { seatHeight = newValue; } } Mountainbike mewarisi semua bidang dan metode Sepeda dan menambahkan seatHeight lapangan dan metode untuk mengaturnya. Kecuali untuk konstruktor, seolah-olah kamu telah menulis kelas Mountainbike baru seluruhnya dari awal, dengan empat kolom dan lima metode. Subclass A mewarisi semua anggota publik dan yang dilindungi induknya, apapun kemasan subclass yang masuk Jika subclass dalam package yang sama sebagai induk, ia juga mewarisi paket-pribadi anggota induknya. Private Members dalam Superclass Subclass merupakan class yang diturunkan dari suatu class superclass. Superclass kadang-kadang disebut dengan parent class atau base class. sedangkan subclass biasa disebut dengan child class atau extended class. Pada subclass biasanya terdapat fungsi yang lebih atau class yang lebih detail dibandingkan superclass-nya. Casting Objects Sebuah objek adalah tipe data kelas dari mana ia dipakai. Sebagai contoh, jika kita menulis public Mountainbike myBike = baru Mountainbike (); maka myBike adalah type dari Mountainbike Mountainbike adalah keturunan dari sepeda dan Object. Oleh karena itu, Mountainbike adalah sepeda dan juga Obyek, dan dapat digunakan dimanapun untuk Bicycle atau Object objek tersebut. Kebalikannya tidak selalu benar: Bicycle Mountainbike mungkin, tetapi tidak selalu. Demikian pula, Obyek mungkin Bicycle atau Mountainbike, tetapi tidak selalu.

Casting menunjukkan penggunaan sebuah objek dari satu jenis di tempat jenis lain, di antara benda-benda diijinkan oleh warisan dan implementasi. Jika ditulis: Object obj = new Mountainbike (); maka obj baik Obyek dan Mountainbike (sampai saat obj ditugaskan objek lain yang tidak Mountainbike a). Ini disebut penuangan implisit. Jika, di sisi lain, kita menulis Mountainbike myBike = obj; kita akan mendapatkan error kompilasi waktu karena obj tidak diketahui compiler untuk menjadi sebuah Mountainbike. Namun, kita dapat memberitahu compiler bahwa Kami menetapkan Mountainbike untuk obj dengan casting eksplisit: Mountainbike myBike = (Mountainbike) obj; Overriding dan Hiding Methods Metode Instance Sebuah metode misalnya dalam subclass dengan (nama, ditambah jumlah dan jenis parameter) dan kembali jenis sebagai metode misalnya dalam superclass menimpa metode supernya itu. Kemampuan subclass untuk menimpa metode memungkinkan kelas untuk mewarisi dari superclass yang perilakunya "cukup dekat" dan kemudian untuk memodifikasi perilaku yang diperlukan. Metode utama memiliki nama nomor, yang sama dan jenis parameter, dan tipe kembali sebagai metode overrides. Sebuah metode utama juga dapat kembali subtipe dari jenis dikembalikan oleh metode overrides. Hal ini sering disebut covariant return type. Ketika sebuah metode overriding, mungkin ingin menggunakan anotasi @ Override yang menginstruksikan kompiler yang Anda berniat untuk mengganti metode dalam superclass. Jika, untuk beberapa alasan, compiler mendeteksi bahwa metode tersebut tidak ada dalam salah satu superclasses, maka akan menghasilkan kesalahan. Untuk informasi lebih lanjut tentang @ Override, lihat Annotations. Class Methods Jika subclass mendefinisikan sebuah metode kelas dengan tanda tangan yang sama sebagai metode kelas dalam superclass, metode dalam subclass menyembunyikan satu di superclass. contoh satu dari metode kelas: public class Animal { public static void testClassMethod() { System.out.println("The class" + " method in Animal."); } public void testInstanceMethod() { System.out.println("The instance " + " method in Animal."); } } class pertama, subclass dari binatang, disebut Cat: public class Cat extends Animal { public static void testClassMethod() { System.out.println("The class method" + in Cat."); } public void testInstanceMethod() { System.out.println("The instance method" + in Cat."); } public static void main(String[] args) { Cat myCat = new Cat(); Animal myAnimal = myCat; Animal.testClassMethod(); myAnimal.testInstanceMethod();

} } Class Cat metode overrides misalnya dalam Hewan dan menyembunyikan metode class di Hewan. Metode utama di kelas ini menciptakan sebuah instance dari Cat dan panggilan testClassMethod () pada kelas dan testInstanceMethod () pada contoh. Output dari program ini adalah sebagai berikut: Metode kelas di Hewan. Metode instansi di Cat Modifiers Specifier akses untuk meng-override metode dapat memungkinkan lebih banyak, tetapi tidak kurang, akses dari metode ditimpa. Sebagai contoh, sebuah metode misalnya dilindungi dalam superclass dapat dibuat publik, tetapi tidak pribadi, dalam subclass Summary Defining a Method with the Same Signature as a Superclass's Method Superclass Instance Method Subclass Instance Method Overrides Subclass Static Method Generates a compile-time error

Generates a compile-time error Hides

Anda mungkin juga menyukai