Ekipmanlar ve Uzatmalar Arasındaki Fark

Uygulama ve Uzatmalar

Uygulamalar ve Genişletmeler, Java programlama dilinde bulunan ve yeni bir sınıfa ek işlevsellik aktarma aracı sağlayan iki anahtar kelimedir. Implements anahtar sözcüğü açıkça bir arabirimi uygulamak için kullanılırken, Extends anahtar sözcüğü bir (süper) sınıftan devralmak için kullanılır. Kalıtım ve arayüz kavramlarının C # ve VB.NET gibi diğer nesne yönelimli programlama dillerinin çoğunda bulunduğunu, ancak bu kavramları uygulamak için farklı sözdizimi veya anahtar kelimeler sunduğunu lütfen unutmayın. Bu makale yalnızca Java ile tanımlanan anahtar kelimeleri uygular ve genişletir.

Uzattı

Extends anahtar kelime, Java programlama dilinde kalıtım kavramını uygulamak için kullanılır. Devralma, temelde varolan bir sınıfın özelliklerini ve davranışını yeni tanımlanmış bir sınıf tarafından genişletmeye izin vererek kodun yeniden kullanımını sağlar. Yeni bir alt sınıf (veya türetilmiş sınıf) bir süper sınıfı (veya üst sınıfı) genişlettiğinde, bu alt sınıf süper sınıfın tüm niteliklerini ve yöntemlerini devralır. Alt sınıf isteğe bağlı olarak üst sınıftan devralınan davranışı geçersiz kılabilir (yöntemlere yeni veya genişletilmiş işlevsellik sağlar). Alt sınıf, Java'da birden çok süper sınıfı genişletemez. Bu nedenle, çoklu kalıtım için uzantıları kullanamazsınız. Birden fazla mirasa sahip olmak için, aşağıda açıklandığı gibi arayüzler kullanmanız gerekir.

uygular

Java programlama dilinde anahtar sözcük uygular, bir sınıfa göre bir arabirim uygulamak için kullanılır. Java'daki bir arabirim, sınıflar tarafından uygulanması gereken ve bu arabirimi uygulayan bir sözleşme belirtmek için kullanılan soyut bir türdür. Genellikle bir arabirim yalnızca yöntem imzaları ve sabit bildirimler içerir. Belirli bir arabirimi uygulayan herhangi bir arabirim, arabirimde tanımlanan tüm yöntemleri uygulamalı veya soyut bir sınıf olarak bildirilmelidir. Java'da, nesne başvurusunun türü arabirim türü olarak tanımlanabilir. Ancak bu nesne boş olmalı veya söz konusu arabirimi uygulayan bir sınıf nesnesine sahip olmalıdır. Java'da Implements anahtar sözcüğünü kullanarak, tek bir sınıfa birden çok arabirim uygulayabilirsiniz. Arayüz başka bir arayüz uygulayamaz. Ancak bir arabirim bir sınıfı genişletebilir.

Uygulama ve Genişletme Arasındaki Fark

Implements ve Extends, Java programlama dilinde bir sınıfa öznitelikleri ve davranışları devralmak için bir mekanizma sağlayan iki anahtar kelime olsa da, bunlar iki farklı amaç için kullanılır. Implements anahtar sözcüğü, bir sınıfın belirli bir arabirimi uygulaması için kullanılırken, Extends anahtar sözcüğü, bir alt sınıfın bir süper sınıftan genişletilmesi için kullanılır. Bir sınıf bir arabirim uyguladığında, o sınıfın arabirimde tanımlanan tüm yöntemleri uygulaması gerekir, ancak bir alt sınıf bir süper sınıfı genişlettiğinde, üst sınıfta bulunan yöntemleri geçersiz kılabilir veya geçersiz kılabilir. Son olarak, Implements ve Extends arasındaki bir diğer önemli fark, bir sınıfın birden çok arabirim uygulayabilmesidir, ancak Java'da yalnızca bir süper sınıftan uzayabilir. Genel olarak, daha yüksek esneklik ve kuplajı en aza indirme yeteneği gibi çeşitli nedenlerle, Uygulamaların (arayüzlerin) kullanımının Uzatmalar (kalıtım) kullanımına kıyasla daha uygun olduğu düşünülmektedir. Bu nedenle uygulamada, temel sınıflardan genişletme yerine bir arayüze programlama tercih edilir.