Abap Abstract Class Nedir?

Abap Abstract Class, bir soyutlama sınıfıdır, yani doğrudan örneklenemez. Diğer sınıflar tarafından miras alınır ve özel metotları, amaçları ve davranışları içeren bir şablondur.


Abap Abstract Class Nedir?

Abap programlama dilinde, bir abstract class (soyut sınıf) diğer sınıflar tarafından miras alınarak kullanılan bir sınıf türüdür. Bir abstract class, nesne oluşturulabilen somut bir sınıf değildir, sadece miras alınmak ve alt sınıflar tarafından genişletilmek için kullanılır.

Bir abstract class, bir arayüz (interface) gibi davranır, çünkü içerisinde hem somut (concrete) hem de soyut yöntemler (method) bulunabilir. Somut yöntemler, abstract class'ın içindeki kodu gerçekleştirirken, soyut yöntemler ise alt sınıflar tarafından uygulanmalıdır.

Abstract class'ların kullanımının başlıca amacı, alt sınıflar arasında ortak özellikleri ve davranışları tanımlamaktır. Bu sayede, bir abstract class içinde tanımlanan yöntemler ve özellikler, miras alan alt sınıflar tarafından tekrar tekrar kullanılabilir, böylece kod tekrarının önüne geçilir.

Bir Abap abstract class tanımlamak için, ABSTRACT CLASS anahtar kelimesi kullanılır. Bu tanımın ardından, soyut yöntemler veya somut yöntemler tanımlanabilir. Soyut yöntemler tanımlanırken, ABSTRACT METHOD ifadesi kullanılır ve alt sınıflar tarafından uygulanmalıdır.

Bir abstract class'ın alt sınıflarından en az biri tarafından soyut yöntemlerin uygulanması gerekmektedir. Eğer bir alt sınıf, tüm soyut yöntemleri uygulamazsa, o alt sınıf da abstract olarak tanımlanmalıdır.

Örneğin, bir araç sınıfı tasarlayacak olursak:


ABSTRACT CLASS C_Arac .

  PUBLIC SECTION .

    ABSTRACT METHOD HizalmamYap .

    METHOD GazVerme .

  ENDCLASS .

Yukarıdaki örnekte, C_Arac adında bir abstract class tanımlanmıştır. Bu class'ın içinde HizalamamYap adında bir soyut yöntem (abstract method) ve GazVerme adında bir somut yöntem (concrete method) bulunmaktadır.

Abstract class'ların kullanımı önemlidir, çünkü bu sayede kod tekrarı önlenir ve programlama süreci daha verimli hale gelir. Bir abstract class'ın alt sınıflarından türetilen nesneler, aynı soyut yöntem ve özelliklere sahip olacaklarından, bu nesneler birbirinin yerine geçebilir, böylece kodun daha esnek bir şekilde yazılması sağlanabilir.

Sonuç olarak, Abap programlama dilinde abstract class'lar, alt sınıflar tarafından miras alınarak kullanılabilen ve ortak davranışları tanımlayan bir sınıf türüdür. Soyut yöntemler ve somut yöntemler içerebilir. Abstract class'ların kullanımı, kod tekrarını önler ve programlama sürecini daha verimli hale getirir.


Sıkça Sorulan Sorular

1. Abap Abstract Class nedir?

Abap Abstract Class, diğer sınıflar tarafından kalıtım alınabilen ancak doğrudan örneği oluşturulamayan bir sınıf türüdür. Yani bu sınıftan yeni bir nesne oluşturmak mümkün değildir.

2. Abstract Class'ın kullanım amacı nedir?

Abstract Class'lar, ortak özelliklere ve metotlara sahip olan sınıflar için bir şablondur. Bu sınıflardan türetilen sınıflar, ortak özellikleri ve metotları kalıtım alarak kullanabilir ve aynı zamanda kendi özel özelliklerini ve metotlarını da ekleyebilir.

3. Abap Abstract Class nasıl tanımlanır?

Abap'da Abstract Class tanımlamak için CLASS keyword'ü kullanılır. Bu tanımlama yapılırken, CLASS kelimesinden sonra ABSTRACT kelimesi eklenerek sınıfın abstract olduğu belirtilir.

4. Abstract Class'lar nasıl kullanılır?

Abstract Class'lar, kalıtım alınabilir oldukları için diğer sınıfların içerisinde BASED ON deyimi ile referans olarak kullanılabilir. Bu sayede Abstract Class'ın ortak özellikleri ve metotları miras alınarak kullanılabilir.

5. Bir sınıf hem Abstract hem de Normal Class olabilir mi?

Evet, bir sınıf hem AbstractClass hem de Normal Class olabilir. Yani bir sınıf hem doğrudan örneği oluşturulabilen bir sınıf hem de diğer sınıflara kalıtım verebilen bir Abstract Class olabilir. Bu durumda sınıfı tanımlarken ABSTRACT kelimesi kullanılarak Abstract Class olarak işaretlenir.

Diğer Nedir Yazıları