Java'da Soyut Sınıf ve Yöntemler [Örneklerle]

Yayınlanan: 2021-06-18

Aşağıdaki makale Java'da soyutlamanın özelliklerini ve soyut sınıflar ve soyut yöntemlerle nasıl elde edilebileceğini tartışacaktır. Java'da soyut sınıfların ve arayüzlerin özelliklerini keşfedeceğiz.

İçindekiler

Soyutlama

Java'nın önemli kavramlarından biri soyutlamadır. Kullanıcının sadece bir programın önemli detayları ile görüntülendiği özelliktir. Gerekli olmayan tüm parçalar gizli tutulur. İşlem bir e-posta örneği ile açıklanabilir. Gönderenler, alıcıya teslim edilen bir e-posta gönderir. Göndericinin bildiği tek bilgi, e-postanın gönderildiğidir. E-postayı göndermenin arka plan işlemi kullanıcılardan gizlenir. Nesneye Yönelik Programlamada (OOP) temel öğelerin kullanıcıya görüntülendiği, ancak gerekli olmayan parçalar gizlendiği sürece benzerdir. Kullanıcının uygulama süreci hakkında hiçbir bilgisi yoktur, ancak yalnızca işlevsellik bilinmektedir. Bu mekanizma, bir nesnenin yalnızca temel özelliklerinin gösterildiği ve diğer özelliklerin göz ardı edildiği soyutlama olarak bilinir.

Java'da soyutlama, soyut sınıflar ve arayüzler aracılığıyla sağlanır.

Java'da soyut sınıf

Java'da soyut sınıflar ve yöntemler için "soyut" anahtar sözcüğü kullanılır. Soyut sınıf, bildiriminde soyut anahtar kelimeye sahiptir.

Bir Java soyut sınıfının sözdizimi şöyledir:

soyut sınıf sınıf_adı

{

public abstract void the_abstractMethod();

public void the_normalMethod()

{

#yöntemin gövdesi

}

}

Yukarıdaki sözdizimi, bir soyut sınıfta hem normal hem de soyut yöntemlerin bulunabileceğini gösterir.

Soyut sınıfların birkaç özelliği şunlardır:

  • Soyut yöntemler Java soyut sınıfında bulunabilir veya bulunmayabilir .
  • Bir sınıfta en az bir soyut yöntemin bulunması, sınıfı soyut bir sınıf yapar.
  • Soyut bir sınıf herhangi bir nesneye sahip olamaz ve bu nedenle doğrudan somutlaştırılamaz.
  • Soyut bir sınıf, yalnızca başka bir sınıftan miras alınmışsa ve soyut yöntemleri uygularsa kullanılabilir.
  • Soyut bir sınıf miras alınırken soyut yöntemlerin uygun şekilde uygulanması gerekir.
  • Bir Java soyut sınıfında hem normal hem de soyut yöntemler bulunabilir .
  • Parametreli yapıcılar bir soyut sınıfta bulunabilir. Ayrıca, bir soyut sınıf her zaman varsayılan bir kurucu içerir.

soyut yöntemler

Soyut yöntemler, bildirimi için uygulama gerektirmeyen yöntemlerdir. Bu yöntemlerin bir gövdesi yoktur, bu da uygulama anlamına gelmez. Soyut bir yöntemin birkaç özelliği şunlardır:

  • Java'da soyut bir yöntem, "abstract" anahtar sözcüğüyle bildirilir.
  • Soyut yöntemin bildirimi yapılırken, yöntem adından önce abstract anahtar kelimesi konulmalıdır.
  • Soyut bir yöntemde gövde yoktur, yalnızca yöntemin imzası bulunur.
  • Java'daki soyut bir yöntemde küme parantezi bulunmaz, ancak yöntemin sonunda noktalı virgül (;) bulunur.

soyut çift Yöntem(çift n1, çift n2);

  • Soyut bir yöntem içeren herhangi bir sınıf, soyut bir sınıf olarak bildirilmelidir. Bunun tersi doğru olmasa da, yani soyut bir sınıfın soyut bir yöntemi olması gerekli değildir.
  • Bir soyut sınıfın normal bir sınıf tarafından kalıtımı, üst sınıftaki tüm soyut yöntemlerin uygulanmasını gerektirir.

Soyut bir yöntem örneği

genel soyut sınıf Araba

{

özel String modeli;

özel Dize rengi;

özel int yıl;

genel soyut çift hesaplamaPrice();

}

Türetilmiş sınıflar soyut yöntemleri uygulamazsa, somutlaştırılamayan soyut sınıflarla sonuçlanır.

Birkaç tanesi Java'da soyut anahtar kelime ile kullanılamaz.

  • son
  • soyut yerli
  • soyut statik
  • soyut özel
  • soyut senkronize
  • soyut katı fp

Java'da soyut bir yöntemin kullanımını gösteren bir kod aşağıda gösterilmiştir.

Kaynak

Kodun çıktısı:

Java Arayüzleri

Soyut sınıflar ve soyut yöntemler dışında Java, soyutlamaya ulaşmak için arayüzler kullanır. İlgili yöntemler birlikte boş gövdeler halinde gruplandırıldığında, buna arayüz denir. Arayüz, soyut yöntemlerin gruplandırılması olduğu için soyut bir sınıfa benzer. Bir sınıf arayüzü uyguladığında, arayüz içindeki tüm soyut yöntemler miras alınır. Arabirim ayrıca varsayılan yöntemler, sabitler ve statik yöntemler içerebilir. Yalnızca varsayılan ve statik yöntemlerin yöntem gövdeleri mevcuttur. Bir kalıtım ve bir sınıf benzer şekilde yazılabilir ancak bir sınıf, bir nesnenin niteliklerini ve davranışını tanımlayabilir. Bir arabirim durumunda, yalnızca bir nesnenin davranışları mevcutken, bunlar sınıf tarafından uygulanır.

Bir sınıf, uyguladığı arabirimin tüm yöntemlerini tanımlamalıdır. Yalnızca soyut bir sınıf için, yöntemlerin sınıf tarafından tanımlanması gerekmez.

Bir arabirim, aşağıdaki şekillerde bir Java soyut sınıfına benzer:

  • Bir arabirimde herhangi bir sayıda yöntem bulunabilir.
  • .java uzantısı, bir dosyaya arayüz yazmak için kullanılır. Dosyanın adı, arabirimin adıyla eşleşmelidir.
  • .class dosyası, bir arabirimin bayt kodunu içerir.
  • Arayüzler paketlerde görünür. Bir arabirimin bayt kodu dosyası, paket adıyla aynı ada sahip bir dizinde bulunur.

Bir arabirim, Java soyut sınıfından aşağıdaki şekillerde farklıdır:

  • Arayüz somutlaştırılamaz.
  • Bir arabirimde yapıcı yoktur.
  • Arayüz yalnızca soyut yöntemler içerir.
  • Bir arabirimde örnek alanı yoktur. Bir arayüzde görünmesi gerekiyorsa, bir alan hem statik hem de nihai olarak bildirilmelidir.
  • Yalnızca bir sınıf bir arabirim uygulayabilir, ancak genişletilemez.
  • Bir arabirim, birden çok arabirimi genişletebilir.

Dünyanın En İyi Üniversitelerinden Online Yazılım Kursları Öğrenin . Kariyerinizi hızlandırmak için Yönetici PG Programları, Gelişmiş Sertifika Programları veya Yüksek Lisans Programları kazanın.

Bir Arayüzün Özellikleri

  • Bir arabirimi soyut anahtar kelime aracılığıyla soyut olarak bildirmeye gerek yoktur, çünkü örtük olarak soyuttur.
  • Soyut anahtar kelimeler, örtük olarak soyut olduklarından, yöntemleri soyut olarak bildirmek için gerekli değildir.
  • Bir arabirimdeki tüm yöntemler dolaylı olarak herkese açıktır.

Arayüz nasıl bildirilir?

“Arayüz” anahtar kelimesi, bir arayüz bildirmek için kullanılır. Toplam soyutlama, bir arabirim kullanılarak sağlanır. Varsayılan olarak, bir arabirimdeki tüm yöntemler soyut ve geneldir. Bu, bir arabirimde yöntemlerden hiç kimsenin olmadığı ve tüm alanların statik, genel ve nihai olduğu anlamına gelir.

Bir arayüzün sözdizimi:

Arayüz adı_of_the_interface {

# alanları bildir

# soyut yöntemler bildir

}

Örneğin arayüz Oynatıcı

{

son int yaş = 40;

int hesap();

}

Bir arayüz nasıl uygulanır?

Bir arabirimi uygulamak için ' uygular' anahtar sözcüğü kullanılır. Bir sınıf tarafından birden fazla arayüz uygulanabilir. Bu gibi durumlarda, ' uygular' anahtar sözcüğünü virgülle ayrılmış bir arabirim listesi izler. Anahtar kelime, sınıf bildiriminde kullanılır.

Arayüzün uygulanmasına ilişkin bir örnek aşağıda gösterilmiştir:

Maruti sınıfı Araba uygular

Java'da bir arabirimin uygulamasını gösteren bir kod örneği aşağıda gösterilmiştir.

Kaynak

Kod aşağıdaki çıktıyı üretir:

Birden çok arabirimin uygulanmasını uygulayan bir kod aşağıda gösterilmiştir.

Kaynak

Kod aşağıdaki çıktıyı üretir:

Bazı metin…

Başka bir metin…

Arayüz neden kullanılır?

  • Arayüzler, toplam soyutlamaya ulaşmak için kullanılır.
  • Java, birden çok mirası desteklemediğinden, kalıtım kullanılarak Java'da birden çok kalıtım elde edilebilir.
  • Gevşek bağlantı, bir arabirim kullanılarak elde edilebilir.
  • Java'da uygulama soyutlaması kullanılarak elde edilebilir.

Java'da soyutlama , Java soyut sınıfı aracılığıyla gerçekleştirilebilse de , arayüzler, final, public ve static değişkenleri içerdiklerinden kullanılır. Ancak, nihai olmayan değişkenler soyut bir sınıfta mevcut olabilir.

Soyutlama elde etmek için hem Java arabirimi hem de Java soyut sınıfı kullanılıyorsa, bir arabirim ve soyut sınıf ne zaman kullanılmalıdır?

  • Kullanıcının bir alt sınıf grubu için bir şablon tanımlaması gerektiğinde soyut bir sınıf kullanılır.
  • Bir kullanıcının diğer sınıflar için bir rol tanımlaması gerektiğinde bir arayüz kullanılır.

Soyutlamanın birkaç avantajı şunlardır:

  • Programın karmaşıklığı azalır.
  • Yeniden kullanılabilirliği artıran daha az kod çoğaltma şansı vardır.
  • Kullanıcıya yalnızca birkaç ayrıntı verildiğinden, bir programın güvenliği soyutlama kullanılarak artırılır.

Çözüm

Makale , temel olmayan bilgileri kullanıcıdan gizleme tekniği olan Java'daki ayrıntılı soyutlama kavramını tartıştı . Java'da soyutlama, soyut sınıflar ve arabirimler aracılığıyla sağlanır. Arabirimler tarafından %100 soyutlama sağlanırken, soyut sınıflar tarafından kısmi bir soyutlama sağlanır. Makale ayrıca bir arayüzün ne zaman kullanılacağından ve ne zaman soyut bir sınıfın kullanılması gerektiğinden bahsetti. Ayrıca, bir arabirimin Java soyut sınıfıyla olan benzerliklerini ve farklılıkları da listeledi . Her iki kavramın da gerekli bilgisi olmadan, kusurlarla dolu bir kodla sonuçlanacaktır.

Daha fazla bilgi edinmek ve kavramları gerçek hayat problemlerinde uygulamakla daha fazla ilgileniyorsanız, Liverpool John Moores Üniversitesi tarafından tanınan upGrad ve IIIT-Bangalore tarafından sağlanan Bilgisayar Bilimleri Yüksek Lisans kursuna göz atabilirsiniz. Kurs, önde gelen endüstri uzmanlarından ve yazılım mühendisliği fakültelerinden 500 saatten fazla eğitim sağlayan giriş seviyesi profesyoneller (21-45 yaş arası) için tasarlanmıştır. Kursla ilgili diğer ayrıntılar upGrad'ın resmi web sayfasından kontrol edilebilir.

Kendinizi Geliştirin ve Geleceğe Hazırlanın

IIIT-B'den Yazılım Geliştirmede Yönetici PG Programına Başvurun