Java Genişletilmiş Anahtar Kelime Nedir?
class ParentClass{ ...}
class ChildClass extends ParentClass { ... }
Java'da Hangi Kalıtım?
Extends anahtar sözcüğünün Java'da kullanımını anlamak için öncelikle kalıtım kavramını anlamak önemlidir. Java, Nesne Yönelimli Programlama (OOP) dilidir. OOP, sınıfları ve nesneleri kullanarak bir program tasarlama yöntemidir. Sınıflar ve nesnelerle uğraşırken, temsil edilmesi gereken farklı sınıflar arasında belirli ilişkiler olabilir. Kalıtım, sınıflar arasındaki böyle bir ilişkidir. Kalıtım, nesneler arasında Is-A-İlişkisini belirtir. Kalıtım, bir sınıfın başka bir sınıfın özelliklerini edindiği mekanizma olarak tanımlanabilir. Miras alan sınıfa alt sınıf veya alt sınıf, miras alınan sınıfa ise üst sınıf veya üst sınıf denir. UzatırJava'da, sınıflar arasında kalıtımı gerçekleştirmek için kullanılan anahtar kelimedir.Örnek
Java extends anahtar sözcüğüne örnek olarak aşağıdaki gibidir:class Animal {
// fields of the parent class
String name;
String sound;
int noOfLegs;
// default constructor of the parent class
public Animal (){}
// parameterized constructor of the parent class
public Animal (String name, String sound, int legs){
this.name = name;
this.sound = sound;
this.noOfLegs = legs;
}
// method of the parent class
public void display() {
System.out.println("My name is " + name);
System.out.println("My sound is " + sound);
System.out.println("My no. of legs is " + noOfLegs);
}
}
// inherit from Animal
class Dog extends Animal {
String color;
String breed;
// new method in subclass
public Dog(String name, String sound ,int legs, String color, String breed){
super(name,sound,legs);
this.color = color;
this.breed = breed;
}
public void display() {
super.display();
System.out.println("My color is " + color);
System.out.println("My breed is " + breed);
}
}
public class Main {
public static void main(String[] args) {
// create an object of the subclass
Dog dog1 = new Dog("Billy","Bark",4,"Brown","Labrador");
dog1.display();
System.out.println("------------------");
Dog dog2 = new Dog("Grace","Bark",4,"Black","Husky");
dog2.display();
System.out.println("------------------");
Dog dog3 = new Dog("Hugo","Bark",4,"Gray","Poodle");
dog3.display();
}
}
Çıktı
Benim adım Billy Benim sesim Bark Benim hayır. bacak sayısı 4 Rengim Kahverengi Cinsim Labrador ------------------ Adım Grace Sesim Bark Hayır. bacak sayısı 4 Rengim Siyah Cinsim Husky ------------------ Adım Hugo Sesim Bark Hayır. bacak sayısı 4 Rengim Gri Cinsim Kaniş