Java'da Soyut Sınıf – Örneklerle
Yayınlanan: 2022-06-24Veri soyutlama, belirli bilgileri gizleme ve kullanıcılara yalnızca gerekli ayrıntıları gösterme tekniğidir. Bu veri soyutlaması, soyut sınıf ve arayüzler olmak üzere iki şekilde gerçekleştirilebilir.
Java'da Soyut Sınıf nedir?
Java'daki bir soyut sınıf, soyut anahtar kelimeyle kapsanan veya bildirilen kısıtlı bir sınıftır. Soyut bir sınıf hem soyut hem de soyut olmayan yöntemlere sahip olabilir. Bir nesne oluşturmak için kullanılamaz. Soyut bir sınıfa erişmek için başka bir sınıftan miras alınması gerekir.
Dünyanın En İyi Üniversitelerinden Online Yazılım Geliştirme Kursları öğrenin. Kariyerinizi hızlandırmak için Yönetici PG Programları, Gelişmiş Sertifika Programları veya Yüksek Lisans Programları kazanın.
Soyut Sınıf Kuralları
- Soyut bir sınıf sadece bir soyut anahtar kelime içinde bildirilebilir.
- Hem soyut hem de soyut olmayan yöntemleri içerebilir.
- Nihai yöntemlere de sahip olabilir.
- Asla somutlaştırılamaz.
- Yapıcılar ve statik yöntemler de kullanılabilir.
Soyut Sınıf Örneği:
soyut sınıf B{}
Java'da Soyut Bir Yöntem
Bu yöntem yalnızca soyut bir sınıfta kullanılabilir ve bir gövde içermez. Gövde, miras alınan alt sınıf tarafından sağlanacaktır.
Soyut bir yönteme bir örnek:
soyut geçersiz printStatus(); //yöntem gövdesi ve özeti yok
Soyut Yöntemli Java Soyut sınıfı örneği
Aşağıdaki örnekte, araba, bir soyut yöntem olan run olan soyut bir sınıftır. Uygulama Audi sınıfı tarafından sağlanmaktadır.
soyut sınıf Araba{
soyut boşluk çalıştırma();
}
Audi4 sınıfı Bisikleti genişletiyor{
void run(){System.out.println(“iyi çalışıyor”);}
public static void main(String args[]){
Araba nesnesi = yeni Audi4();
obj.run();
}
}
Programın çıktısı “iyi çalışıyor” olacaktır.
Çoğu durumda, uygulama sınıfı bilinmez (veri soyutlama) olarak kalır ve fabrika yöntemiyle uygulama sınıfının bir nesnesi elde edilir.
Sınıf örneğini döndüren bir yönteme fabrika yöntemi denir.
Fabrika Yöntemi ile Java Soyut Sınıfı Örneği
Aşağıdaki örnekte, bir square sınıfının örneğini oluştururken, Square sınıfının draw() yöntemi başlatılır.
soyut sınıf Şekil{
soyut boşluk çizimi();
}
//Gerçek senaryoda, uygulama başkaları tarafından sağlanır, yani son kullanıcı tarafından bilinmez
sınıf Kare, Shape{'i genişletir
void draw(){System.out.println(“Çizim Karesi”);}
}
Class Circle1 Shape{'i genişletir
void draw(){System.out.println(“çizim altıgen”);}
}
//Gerçek senaryoda metot programcı veya kullanıcı tarafından çağrılır
sınıf TestAbstraksiyon1{
public static void main(String args[]){
Shape s=new Circle1();//Gerçek bir senaryoda, nesne yöntem aracılığıyla sağlanır, örneğin getShape() yöntemi
s.draw();
}
}
Yukarıdaki programın çıktısı “çizim altıgen” olacaktır.
Yazılım Mühendisliği ile İlgili Popüler Kurslar ve Makaleler
Popüler Programlar | |||
Yazılım Geliştirmede Yönetici PG Programı - IIIT B | Blockchain Sertifika Programı - PURDUE | Siber Güvenlik Sertifika Programı - PURDUE | Bilgisayar Bilimlerinde Yüksek Lisans - IIIT B |
Diğer Popüler Makaleler | |||
ABD'de Bulut Mühendisi Maaşı 2021-22 | ABD'de AWS Çözüm Mimarı Maaşı | ABD'de Arka Uç Geliştirici Maaşı | ABD'de Ön Uç Geliştirici Maaşı |
ABD'de Web geliştirici Maaşı | 2022'de Scrum Master Mülakat Soruları | 2022'de Siber Güvenlikte Kariyere Nasıl Başlanır? | Mühendislik Öğrencileri için ABD'de Kariyer Seçenekleri |
Java'da bir Soyut Sınıf ne zaman kullanılmalıdır?
Aşağıda, soyut bir sınıfın kullanılabileceği birkaç senaryo verilmiştir:
- Bir temel sınıfın ortak yöntemlerini kullanarak kodda kalıtım kavramını tanıtmaya çalışırken (çeşitli ilgili sınıflar arasında kodu paylaşmak için).
- Gereksinimler belirli olduğunda ve uygulama ayrıntıları eksik olduğunda.
- Soyut bir sınıfı genişletmek için kullanılan sınıflar, ortak olmayan değiştiriciler gerektiren birden çok ortak alana veya yönteme sahip olduğunda.
- Nesne durumunu değiştirmek için nihai olmayan veya statik olmayan yöntemler kullanıldığında.
Java'da Soyutlama için Arayüz ne zaman kullanılır?
Aşağıdaki senaryolar, soyutlamaya ulaşmak için bir Java arabirimi gerektirir:
- Birden çok mirasın işlevlerini desteklemek için
- Gevşek bağlantı elde etmek için
Bir Arayüz Bildirmek
Arayüz sadece interface anahtar kelimesi ile bildirilmelidir. Bu, tüm kalıtım yöntemlerinin boş bir gövdede bildirilmesi ve tüm alanların varsayılan olarak genel, statik ve nihai hale gelmesi için toplam soyutlama ile sonuçlanır. Arabirimi uygulayan sınıf, arabirimde bildirilen tüm yöntemleri uygulamalıdır.
Java Arayüzü Örneği
Aşağıdaki örnekte, yazdırılabilir arabirim, uygulaması A6 sınıfında sağlanan yalnızca bir yönteme sahiptir.
arayüz yazdırılabilir{
geçersiz baskı();
}
A6 sınıfı yazdırılabilir{
public void print(){System.out.println(“Hoş Geldiniz”);}
public static void main(String args[]){
A6 nesnesi = yeni A6();
obj.print();
}
}
Programın çıktısı olacak
Hoş geldin.
Örnek 2:
arayüz Bankası{
kayan oranOfInterest();
}
sınıf BOI, Bank{'ı uygular
public float rateOfInterest(){return 8.5f;}
}
class CUB, Bank{'ı uygular
public float rateOfInterest(){return 9.2f;}
}
sınıf TestInterface2{
public static void main(String[] args){
Banka b=yeni BOI();
System.out.println(“ROI: “+b.rateOfInterest());
}}
Yukarıdaki programın çıktısı olacaktır.
Yatırım Getirisi: 8.5
Java'da Soyutlamanın Avantajları
- Gevşek bağlantı: Java'da soyutlama, bağımlı varlıkları üstel düzeyde azaltarak gevşek bağlantıya yardımcı olur.
- Yeniden kullanılabilir kodlar: Java'daki soyut sınıf, harika bir zaman tasarrufu sağlar. Soyut yöntem yalnızca gerektiğinde çağrılabilir. Soyut sınıf, aynı kodları yeniden yazmaktan kaçınarak zamandan tasarruf sağlar.
- Veri koruma: Java'da veri soyutlama, hassas kod ayrıntılarını kullanıcılardan gizlemeye yardımcı olur. Önemli proje özelliklerinin gizlenmesine ve yalnızca temel bileşenlerin görüntülenmesine yardımcı olur.
- Daha hızlı problem çözme: Dinamik yöntem çözümlemesinin yardımıyla, yalnızca bir soyut yöntem kullanılarak çeşitli sorunlar ve komplikasyonlar çözülebilir.
Java ve yazılım geliştirmede veri soyutlama hakkında daha fazla bilgi edinmek için, IIIT Bangalore tarafından upGrad ile birlikte sunulan Yazılım Geliştirmede Yönetici Yüksek Lisans Programına kaydolun.
Yazılım Geliştirme Yönetici Lisansüstü programı, 13 aylık bir çevrimiçi programdır. Müfredat, çalışan profesyonellerin işlerinden vazgeçmeden öğrenmeye odaklanmaları için özel olarak tasarlanmıştır. Müfredat, endüstri tabanlı projeler ve vaka çalışmaları içerir. Buna ek olarak, programda adayların sektördeki güncel eğilimlerden haberdar olmalarına yardımcı olmak için sektör uzmanlarından 10'dan fazla canlı oturum bulunmaktadır.
Herhangi bir soyut yöntem olmadan soyut bir sınıfımız olabilir mi?
Evet. Her ikisi de bağımsız teknikler olduğundan, herhangi bir soyut yöntem olmadan soyut bir sınıfa sahip olmak mümkündür. Soyut bir sınıf bildirmek, kendi başına somutlaştırılamayacağını ve yalnızca bir alt sınıfın yardımıyla yapılabileceğini ima eder. Soyut bir yöntem tanımlamak, yöntemin tanımlandığı veya alt sınıfta yer aldığı anlamına gelir.
Veri soyutlama neden önemlidir?
Evet. Her ikisi de bağımsız teknikler olduğundan, herhangi bir soyut yöntem olmadan soyut bir sınıfa sahip olmak mümkündür. Soyut bir sınıf bildirmek, kendi başına somutlaştırılamayacağı ve yalnızca bir alt sınıf yardımıyla yapılabileceği anlamına gelir. Soyut bir yöntem tanımlamak, yöntemin tanımlandığı veya alt sınıfta yer aldığı anlamına gelir.
Veri soyutlamasının kontrol soyutlamasından farkı nedir?
Veri soyutlama, karmaşık ve karmaşık veri türleri oluşturma, ancak yalnızca temel ayrıntıları vurgulama veya ortaya çıkarma sürecidir. Kontrol soyutlaması, soyutlamanın yazılım kısmıyla ilgilenen süreçtir. Programın parçalara ayrıldığı veya basitleştirildiği ve program yürütmelerinin istenmeyen detaylarının gizlendiği süreçtir. Kontrol soyutlaması öncelikle yeni işlevler oluşturmak ve çeşitli kontrol ifadelerini tek bir varlıkta harmanlamak için kullanılır.