Java'da Veri Soyutlamayı Öğrenin

Yayınlanan: 2021-11-11

Veri soyutlama kavramı, gerçek hayattan bir örnekle açıklanabilir. Araç kullanan bir sürücünün, fren yapmanın aracın daha ileri gitmesini engelleyeceğini bildiği bir örneği ele alalım. Yani sürücünün bildiği tek bilgi, aracının hareket etmesini durdurmak zorunda olduğu ve bu nedenle frene bastığıdır. Ancak frene basıldığında aracın nasıl durduğunun altında yatan mekanizmayı bilmiyor. Dolayısıyla bu kavram, yalnızca kullanıcı tarafından bilinmesi gereken bilgilerin görüntülendiği veri soyutlama kavramıyla karşılaştırılabilir. Temel bilgiler gizli tutulur. Yani bu soyutlama kavramıdır ve verilere uygulandığında veri soyutlaması olarak bilinir.

Nesneye Yönelik Programlama, veri soyutlama konseptini kullanmanın yollarını sağlar. Java, Nesne Yönelimli Programlama'dan biridir, veri soyutlama özelliğini takip eder. Bu programlama dillerinde, veri soyutlamayı başarmak için soyut sınıflar ve arayüzler kullanılır.

Java'da veri soyutlama süreci , sınıfın soyut sınıfları aracılığıyla gerçekleştirilir. Arayüzler, soyut sınıflardan ayrı olarak veri soyutlama için de kullanılır. "abstract" anahtar sözcüğü, yöntemler ve sınıflar için erişim olmayan bir değiştirici olarak kullanılır. Access anahtar sözcüğüyle tanımlandığında, bir sınıf, nesnelerin oluşturulmasına izin verilmeyen soyut bir sınıftır. Soyut sınıfa erişim, ancak başka bir sınıftan miras alınmışsa mümkündür. Soyut yöntemler, yalnızca soyut sınıflarda kullanılabilen yöntemlerdir. Bu yöntemlerin bir yöntem gövdesi yoktur.

Alt sınıf genellikle gövdeyi sağlar. Soyut sınıflar, hem normal hem de soyut olan yöntemler içerebilir.

İçindekiler

Soyut sınıf ve soyut yöntem arasındaki farklar

Soyut bir sınıf ile soyut bir yöntem arasındaki farklar şunlardır:

1. Abstract sınıfları, abstract anahtar sözcüğüyle bildirilen sınıflardır.

2. Soyut bir yöntem, uygulanmadan bildirilen bir tür yöntemdir.

3. Soyut bir sınıfın tüm soyut yöntem yöntemlerini kendi içinde bulundurması gerekmez. Soyut olmayan yöntemler de içerebilir.

4. Bir yöntem soyut bir yöntem olarak tanımlandığında, alt sınıfta da yeniden tanımlanmalıdır. Bu, geçersiz kılmayı zorunlu kılacak ve ayrıca alt sınıfı soyut hale getirecektir.

5. Herhangi bir sınıf, bir soyut yöntem veya bundan daha fazla, herhangi bir soyut yöntem içeriyorsa, özet anahtar sözcüğü kullanılarak özet olarak bildirilmelidir.

6. Soyut bir sınıf herhangi bir nesne içeremez. Soyut sınıfı başlatmak için yeni bir operatör kullanılamaz.

7. Soyut bir sınıfta her zaman varsayılan kurucular vardır. Ayrıca, soyut bir sınıfta parametreli kurucular bulunabilir.

Java Soyut sınıfı

Java programlama dili, soyut sınıflar aracılığıyla soyutlamayı uygular. Soyut bir sınıf, "abstract" anahtar kelimesiyle, bu sınıfların somutlaştırılamayacağı özel bir talimatla bildirilen sınıf olarak tanımlanabilir. Bu sınıflar soyut yöntemler içerebilir veya içermeyebilir.

Java'da soyut bir sınıfın sözdizimi aşağıda gösterilmiştir.

Yukarıdaki kod https://www.softwaretestinghelp.com/what-is-abstraksiyon-in-java/ adresinden alınmıştır .

Yukarıdaki sözdiziminde hem soyut hem de soyut olmayan yöntemlerin bir soyut sınıf içinde yer alabildiği görülebilir. Ayrıca, sınıfın bildirilmesinden önce “soyut” anahtar kelimesi yerleştirilir.

Java soyut sınıfı hakkında daha fazlasını buradan okuyun

Java Özet Yöntemi

Java soyut yöntemleri, "soyut" anahtar sözcüğünden önce gelen yöntemlerdir, ancak yöntemlerin uygulanması yoktur. Java soyut yöntemleri, Java soyut sınıfı içinde bildirilir.

Soyut yöntemler nedeniyle, yöntemler uygulanamadığı için Java soyut sınıfı eksik olur. Bu nedenle, soyut sınıfa soyut bir formun dahil edilmesi, doğal olarak soyut sınıfı eksik yapar.

Alt sınıftaki uygulaması soyut yöntemi kullanabilir. Bu alt sınıf, soyut sınıfı devralacak ve soyut yöntemlerin uygulamasını gerçekleştirecektir. Soyut yöntemin genel sözdizimi şöyledir:

soyut geçersiz yöntemAdı (parametre_listesi);

Özet yöntemi yazılırken birkaç kurala dikkat edilmelidir.

  • Bir sınıf birden fazla soyut yöntem içeriyorsa, sınıf soyut bir sınıf olacaktır.
  • Soyut sınıf ve metotlar tanımlanırken “abstract” dışında herhangi bir anahtar kelime bulunmamalıdır.

Yukarıdaki noktalar göz önüne alındığında, Java'da aşağıdaki olasılıklara izin verilmez.

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

Java'da bir veri soyutlama örneği aşağıda gösterilmiştir.

https://www.javatpoint.com/how-to-achieve-abstraksiyon-in-java .

Yukarıdaki kod https://www.softwaretestinghelp.com/what-is-abstraksiyon-in-java/ adresinden alınmıştır .

Yukarıda gösterilen kodda bir Bank sınıfı vardır. Bank sınıfı içinde getInterestRate() olan soyut bir yöntem vardır. Diğer iki sınıf BOI ve ICICI, Bank sınıfını miras alan ilan edilmiştir. Bildirilen bu sınıflar Bank sınıfını devralır ve bu nedenle faiz oranlarını döndüren getInterestRate() yöntemini uygular.

Birincil yöntemde Bankanın bir nesnesi oluşturulur. Bankanın nesnesi, faiz oranını gösteren bir ICICI sınıfı nesnesinden oluşur. Bir sonraki adımda, faiz oranını gösteren BOI sınıfının nesnesi de oluşturulur.

Arayüz aracılığıyla veri soyutlama

Arayüzler, Java sınıflarına benzer, tek fark, bir arayüzde boş yöntemler olmasıdır. Soyut yöntemler ve statik sabitlerden oluşan sınıflar olarak da tanımlanabilir. Arayüzde bulunan her yöntem herkese açıktır ve herhangi bir kurucu içermez. Arayüz, veri soyutlamayı elde etmek için kullanılır ve ayrıca Java'da birden çok kalıtım gerçekleştirmek için kullanılır.

Java'daki arayüzlerin birkaç özelliği şunlardır:

  • Arayüzler, toplam soyutlamaya ulaşmak için kullanılabilir.
  • Tek bir sınıf, birden çok arabirimin elde edilmesine yol açan birden çok arabirim kullanabilir.
  • Arayüzler, gevşek bağlantı elde edilmesini sağlar.

Arayüzün sözdizimi aşağıda gösterilmiştir:

Yukarıdaki sözdizimi https://www.javatpoint.com/how-to-achieve-abstraksiyon-in-java adresinden kullanılmaktadır .

“Uygulamalar” anahtar kelimesi aracılığıyla bir arayüz kullanılabilir.

Soyut sınıflar ve arayüz arasındaki birkaç fark şunlardır:

  • Soyut sınıflar içinde hem soyut hem de soyut olmayan yöntemler bulunabilir. Bir arayüzde, yalnızca soyut yöntemler mevcut olabilir.
  • Son değişkenler soyut sınıflarda bulunabilir veya bulunmayabilir. Arayüzlerde, değişkenler varsayılan değişkenler olarak nihai olabilir.
  • Soyut sınıf, nihai olmayan, nihai, statik olmayan veya statik olmayan değişkenlere sahip olabilir. Bir arabirimde yalnızca statik ve son değişkenler mevcut olabilir.
  • Soyut sınıf, arayüzlerin uygulanmasına izin verir. Bir arayüzde soyut bir sınıf uygulanamaz.
  • Soyut bir sınıfın kalıtımı, "extends" anahtar sözcüğü aracılığıyla yapılır. Arayüzün uygulanması “uygular” anahtar kelimesi aracılığıyla yapılır.
  • Soyut sınıf birden çok arabirim uygulayabilir veya diğer sınıflar soyut sınıf tarafından genişletilebilir. Oysa bir arabirim yalnızca başka bir arabirimin uygulanmasına izin verebilir.
  • Genel üyeler dışında, hem korunan hem de özel olan veri üyeleri soyut bir sınıfta bulunur. Oysa bir arabirimin üyeleri varsayılan olarak herkese açıktır.

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.

Çözüm

Makale, veri soyutlama kavramlarını tanımlamış ve Java'da veri soyutlamanın nasıl elde edilebileceğini listelemiştir. Java programlama dilinde daha fazla deneyim kazanmak için upGrad'ın sunduğu Yazılım Geliştirme Kursunu inceleyebilirsiniz. Kurs, çalışan profesyoneller için tasarlanmıştır ve sizi gerekli programlama becerilerini geliştirecek endüstri odaklı projelerle eğitecektir. Daha fazla bilgi web sitemiz üzerinden alınabilir. Her türlü bilgi ve yardım için yardım ekibimizle iletişime geçilebilir.

Veri Soyutlama Nedir?

Veri soyutlama bir yazılım tasarım konseptidir. Çözdüğü problem, üzerinde çalıştıkları veri tiplerinden bağımsız veri yapıları ve fonksiyonlar yaratmaktır. Kodu veri türlerinden ayırır ve aynı kodun birden çok durumda kullanılmasına izin verir. Veri yapısı tarafından temsil edilen veriler ve bunlara uygulanabilecek işlemler açıkça tanımlandığında veri soyutlaması sağlanır. Soyutlama, yazılım geliştirmede hayati öneme sahiptir. Daha basit, daha küçük ve daha güvenilir yazılımlara yol açan temel güçlerden biridir. Veri soyutlama, üst düzey dillerin hayati bir bileşenidir.

Java'da soyutlamanın avantajları nelerdir?

Java'da soyutlama nasıl elde edilir?

Java'da soyutlamalar Arayüzler kullanılarak yapılır. Arayüzü uygulamak için, uygulamanın da sağlanması gerekir. Aslında, arayüzü uygulamak için sınıfları miras almaya gerek yoktur. Arayüzler, Java'daki diğer sınıflar gibidir. Onları farklı kılan ise tek bir metoda sahip olmalarıdır.