Java
abstract sınıf
abstract sınıf tanımlamayı öğrenirsin.
abstract sınıf nedir?
Bir abstract sınıf, doğrudan örneklenemeyen bir temel sınıftır. abstract anahtar kelimesiyle tanımlanır. Alt sınıflar için bir şablon görevi görür; ortak alan ve metotları toparlar.
Örnek: abstract class Shape { }. Burada Shape abstract'tır; new Shape() yazarsan derleme hatası alırsın. Ama class Circle extends Shape { } yazabilirsin. Abstract sınıf, somut sınıfların taşıyamayacağı ortak davranışı tanımlar. Alt sınıf, abstract sınıfın gövdesini extends ile miras alır. Bu mekanizma kod tekrarını azaltır ve hiyerarşiyi düzenli tutar. Temel sınıf yalnızca şablon sağlar.
Abstract sınıf örnekleme
Bir abstract sınıftan new ile örnek oluşturamazsın. Java, soyut bir türü somutlaştırmayı engeller. Önce bir alt sınıf yazıp onu örneklemen gerekir.
Örnek: abstract class Animal { } tanımladıysan, new Animal() derleme hatası verir. Ama class Dog extends Animal { } yazıp new Dog() yapabilirsin. Bu kısıtlama, abstract sınıfın yalnızca temel olmasını sağlar; tek başına kullanılmasını engeller. Alt sınıf, abstract sınıfın sunduğu şablonu doldurur. Bu, hiyerarşinin anlamlı kalmasına yardımcı olur. Eğer doğrudan örneklemek istiyorsan sınıfı abstract yapmamalısın.
Uygulama Shape abstract sınıfını tanımla
Shape adında bir abstract sınıf tanımla. İçine String name alanını ekle ve yapıcı Shape(String name) yaz; alanı ata. class Circle extends Shape yaz; yapıcı Circle(String name) ile üst yapıcıyı super(name) ile çağır. main içinde Circle c = new Circle("Daire"); ile System.out.println(c.name); yazdır.
Örnek çözümü göster
abstract class Shape {
String name;
Shape(String name) {
this.name = name;
}
}
class Circle extends Shape {
Circle(String name) {
super(name);
}
}
class Main {
public static void main(String[] args) {
Circle c = new Circle("Daire");
System.out.println(c.name);
}
}
Kendini test et
-
Bir abstract sınıf nasıl tanımlanır?
- interface class
- final class
- abstract class
- static class
Cevabı göster
abstract class — abstract class kelime öbeği soyut sınıf bildirir.
-
abstract sınıf tanımını tamamla
abstract ____ Shape {
String name;
}
Cevabı göster
abstract class Shape {
String name;
}
-
Abstract sınıf kavramlarını eşle
- abstract
- Soyutluk kelimesi
- class
- Sınıf kelimesi
- extends
- Miras kelimesi
- new
- Örnekleme kelimesi
Sıradaki ders: abstract metot