Mutasyonlar Arasındaki Farktract Sınıfı ve Arayüzü Java

Karın Kasları Arasındaki Temel Farktract Sınıfı ve Arayüzü Java

  • Interface'te bir sınıf birden fazla arayüzü uygulayabilirken, Abs'de bir sınıf yalnızca bir Abs'den miras alabilir.tract Sınıfı.
  • Interface'in erişim değiştiricileri yoktur. Interface içinde tanımlanan her şeyin public değiştiriciye sahip olduğu varsayılırken, Abs'nin erişim değiştiricileri yoktur.tract sınıfı erişim değiştiriciye sahip olabilir.
  • Arayüz veri alanları içeremezken, abstract sınıfı veri alanlarına sahip olabilir.
  • Arayüzler, bir sınıfın çevresel yeteneklerini tanımlamaya yardımcı olurken, soyut bir yapı ise sınıfın temel özelliklerini belirler.trac`t` sınıfı, bir sınıfın kimliğini tanımlar.

Arayüz ve ABStract Sınıfında Java

Abs nedir?tracT Sınıfı mı?

Karın kaslarına sahip bir sınıftracBildiriminde t anahtar kelimesine abs denir.tract sınıfı. Mutlak değerlertract sınıfının sıfır veya daha fazla mutlak değere sahip olması gerekir.tract yöntemleri. Yani, gövdesi olmayan yöntemler. Birden fazla somut yönteme sahip olabilir. MutlaktracT sınıfları, somut sınıflar için şablonlar oluşturmanıza olanak tanır. Ancak miras alan sınıfın mutlak arayüzü uygulaması gerekir.tract yöntemi. Mutlaktract sınıfı örneklendirilemez.

Arayüzleri Kullanmanın Önemli Nedenleri

  • Arayüzler bunu başarmak için kullanılır abstracyon.
  • Çalışma zamanında dinamik yöntem çözümlemesini desteklemek üzere tasarlanmıştır
  • Gevşek bağlantı elde etmenize yardımcı olur.
  • Bir yöntemin tanımını miras hiyerarşisinden ayırmanıza olanak tanır

ABS Kullanmanın Önemli Nedenleritract Sınıfı

  • Abstract sınıfları, alt sınıflar için varsayılan işlevsellik sunar.
  • Gelecekteki spesifik sınıflar için bir şablon sağlar
  • Alt sınıfları için ortak bir arayüz tanımlamanıza yardımcı olur
  • Abstract sınıfı, kodun yeniden kullanılabilirliğini sağlar.

Arayüz Nedir?

Arayüz, bir sınıfı uygulamak için kullanılabilecek bir şablondur. Arayüz, somut metotlar (kod içeren metotlar) içermez. Bir arayüzün tüm metotları soyuttur.tracArayüzler yalnızca metotlar halinde kullanılabilir. Bir arayüz örneklendirilemez. Ancak, arayüzleri uygulayan sınıflar örneklendirilebilir. Arayüzler hiçbir zaman örnek değişkenleri içermez, ancak public static final değişkenler (yani, sabit sınıf değişkenleri) içerebilirler.

Arayüz ve Abs arasındaki farktract Sınıfında Java

Bir karın kasıtracBir sınıf, alt sınıfların uygulayabileceği veya geçersiz kılabileceği işlevsellik oluşturmanıza olanak tanırken, bir arayüz yalnızca işlevselliği belirtmenize izin verir, uygulamanıza izin vermez. Bir sınıf yalnızca bir mutlak sınıfı genişletebilir.tracBir sınıf birden fazla arayüzü uygulayabilirken, bir sınıf da tek bir sınıfı temsil edebilir.

Parametreler arayüzey Abstract sınıfı
hız Yavaş Hızlı
Çoklu Miraslar Birkaç Arayüz Uygulayın Sadece bir karın kasıtract sınıfı
Structure Abstract yöntemleri Abstract ve somut yöntemler
Ne zaman kullanılır? Gelecekteki geliştirme Bağımsızlıktan kaçınmak için
Devralma / Uygulama Bir Sınıf birden fazla arayüzü uygulayabilir Bu sınıf yalnızca bir Abs sınıfını miras alabilir.tract Sınıfı
Varsayılan Uygulama Arayüze yeni şeyler eklerken tüm uygulayıcıları bulmak ve yeni tanımlanan şeyleri uygulamak bir kabustur. Abs durumundatract sınıfında, varsayılan uygulamadan yararlanabilirsiniz.
Erişim Değiştiricileri Arayüzde erişim değiştiricileri yoktur. Arayüz içinde tanımlanan her şeyin genel değiştirici olduğu varsayılır. Abstract sınıfı erişim değiştiriciye sahip olabilir.
Ne zaman kullanılır? Çeşitli uygulamaların yalnızca yöntem imzasını paylaştığı durumlarda arayüzü kullanmak daha iyidir. Değer türlerinin polimorfik hiyerarşisi. Aynı türden çeşitli uygulamaların ortak bir davranışı paylaştığı durumlarda kullanılmalıdır.
Veri alanları arayüz veri alanları içeremez. sınıfın veri alanları olabilir.
Çoklu Kalıtım Varsayılanı Bir sınıf çok sayıda arayüz uygulayabilir. Bir sınıf yalnızca bir mutlak değerden miras alır.tract sınıfı.
Uygulama Bir arayüz, mutlaktır.tracBöylece hiçbir kod sağlayamaz. Bir karın kasıtrac`t` sınıfı, geçersiz kılınması gereken eksiksiz, varsayılan bir kod sağlayabilir.
Erişim değiştiricilerin kullanımı Yöntem, özellikler vb. için erişim değiştiricileri kullanamazsınız. Karın kaslarınızı kullanabilirsiniz.tracErişim değiştiricileri içeren t sınıfı.
kullanım Arayüzler bir sınıfın çevresel yeteneklerini tanımlamaya yardımcı olur. Bir karın kasıtrac`t` sınıfı, bir sınıfın kimliğini tanımlar.
Tanımlanmış alanlar Hiçbir alan tanımlanamaz Bir karın kasıtrac`t` sınıfı hem alanları hem de sabitleri tanımlamanıza olanak tanır.
miras Bir arayüz birden fazla arayüzü miras alabilir ancak bir sınıfı miras alamaz. Bir karın kasıtracBir sınıf, başka bir sınıftan ve birden fazla arayüzden miras alabilir.
Yapıcı veya yıkıcılar Bir arayüz yapıcıları veya yıkıcıları bildiremez. Bir karın kasıtract sınıfı yapıcı ve yıkıcı metotlar tanımlayabilir.
Uzantı Sınırı Herhangi bir sayıda arayüzü genişletebilir. Yalnızca bir sınıfı veya bir abs'yi genişletebilir.tracBir seferde t sınıf.
Abstract anahtar kelimesi Bir karın bölgesindetrac`t` arayüz anahtar kelimesi, bir metodu mutlak olarak bildirmek için isteğe bağlıdır.tract. Bir karın bölgesindetract sınıfı, abstracBir metodu mutlak (abs) olarak tanımlamak için `t` anahtar kelimesi zorunludur.tract.
Sınıf türü Bir arayüz yalnızca herkese açık abs'ye sahip olabilir.tract yöntemleri. Bir karın kasıtracT sınıfı, kamuya açık ve korunan bir sınıftır.tract yöntemleri.

Interface ve Abs için örnek kodtract Sınıfında Java

Aşağıda bir arayüz ve soyutlama oluşturmak için örnek kod bulunmaktadır.tract sınıfında Java

Arayüz Söz Dizimi

interface name{
//methods
}

Java Arayüz Örneği:

interface Pet {
    public void test();
}
class Dog implements Pet {
    public void test() {
        System.out.println("Interface Method Implemented");
    }
    public static void main(String args[]) {
        Pet p = new Dog();
        p.test();
    }
}

Abstract Sınıf Sözdizimi

abstract class name{
    // code
}

Abstract sınıfı örneği:

abstract class Shape {
    int b = 20;
    abstract public void calculateArea();
}

public class Rectangle extends Shape {
    public static void main(String args[]) {
        Rectangle obj = new Rectangle();
        obj.b = 200;
        obj.calculateArea();
    }
    public void calculateArea() {
        System.out.println("Area is " + (b * b));
    }
}

Bu yazıyı şu şekilde özetleyin: