Java Abstract Nedir? Nerelerde Kullanılır?

Posted by dogukanhan on November 02, 2018 · 2 mins read

İçindekiler

Özet

Class Tanımlamasında Abstract Kullanımı

Class İçerisinde Abstract Kullanımı

İnterface içerisinde Abstract Kullanımı

ÖZET

Abstract Soyut veya özet anlamına gelmekte olup, Java Programlama Dilinde; Method, Class ve Interface tanımlamalarında kullanılan bir keyword(anahtar kelime)dür. Abstract tanımlaması kullanılan bir method veya class daha sonradan direk olarak kullanılamayacağı anlamını taşımaktadır. Eğer bahsettiğimiz konu bir mehtod ise bu method daha sonradan kullanılabilemesi için tekrardan tanımlanmalı eğer bahsettiğimiz konu bir class ise bu classtan nesne türetilemeyeceği yani o classı extends(genişleten) bir diğer classın tanımlanımlanması ihtiyacı duyulduğu anlamına gelmektedir.

1-)Class Tanımlamasında Abstract Kullanımı

Class tanımlaması yaparken abstract kullanımı bu class dan nesne oluşturulabilmesini engellemektedir. Abstract Classlar kendi içerisinde abstract methodlar barındırabilme özelliğine sahiptir, diğer class yapılarında böyle bir tanımlama yapılamaz.

Abstract Class Tan Bahsederken

1-) Nesne türetilemez
2-) Abstract metotlara sahip olabilir.

Abstract Class Tanımlama Örneği

public abstract class Delta{
  // metotlar.  
}

 

2-)Class İçerisinde Abstract Metot Kullanımı

Abstract classımızın içerisinde abstract metot tanımlayabiliriz bu tanımlama yapıldıktan sonra metotun body kısmı oluşturulmaz. Bu tanımlama neticesinde bu class ve bundan kalıtım alıcak classlarda bu metotun tanımlanması gerektiği anlamını taşımaktadır. Aslında abstract metot daha sonradan tekrardan içeriği oluşturulacak bir metot olarak söylenebilir. Böyle bir tanımlama yapmamızın asıl sebebi aynı işi birden çok farklı şekilde yapıcaksak bu işin yapılması gerektiğini abstract metot ile belirtip daha sonradan farklı classlar yardımıyla bu işin farklı şekillerde yapılmasını sağlamaktır.

Abstract Metot dan Bahsederken

  1. Daha sonradan tekrardan tanımlanması gerekir.
  2. Tanımlanırken metot gövdesi(Body) yazılmaz.
  3. Abstract metotlar private olamazlar.
  4. Tanımlandığı class abstract olmak zorundadır.

Abstract Metot Tanımlama Örneği

public abstract class Delta{
   abstract void method1();
}

 

3-)İnterface İçerisinde Abstract Kullanımı

Interface içerisinde yazdığımız bütün metotlar abstract metotlardır bu yüzden abstract kelimesini tekrardan yazmamıza gerek yoktur.

İnterface içerisinde Abstract Metot Tanımlama Örneği

public interface Alfa{
    void method2();
}