Uygulamalar ve Uzantılar Arasındaki Fark

Uygulamalar ve Uzantılar Arasındaki Fark
Uygulamalar ve Uzantılar Arasındaki Fark

Video: Uygulamalar ve Uzantılar Arasındaki Fark

Video: Uygulamalar ve Uzantılar Arasındaki Fark
Video: Fakülte ve yüksekokul arasında fark var mı? 2024, Temmuz
Anonim

Uzatmaya Karşı Uygular

Uygulamalar ve Genişletmeler, Java programlama dilinde bulunan ve eklenen işlevleri yeni bir sınıfa aktarmanın bir yolunu sağlayan iki anahtar kelimedir. Implements anahtar sözcüğü, bir arabirimi uygulamak için açıkça kullanılırken, Extends anahtar sözcüğü (süper) bir sınıftan miras almak için kullanılır. Lütfen kalıtım ve arabirim 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 sözcükler sunduklarını unutmayın. Bu makale yalnızca Java'da tanımlanan Implements ve Extends anahtar sözcüklerine odaklanmaktadır.

Uzatır

Extends anahtar sözcüğü, Java programlama dilinde kalıtım kavramını uygulamak için kullanılır. Kalıtım, temel olarak, yeni tanımlanmış bir sınıf tarafından mevcut bir sınıfın özelliklerinin ve davranışının genişletilmesine izin vererek kodun yeniden kullanılması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). Bir 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. Çoklu kalıtım yapabilmek için aşağıda anlatıldığı gibi arayüzleri kullanmanız gerekmektedir.

Uygulamalar

Java programlama dilinde Implements anahtar sözcüğü, bir sınıf tarafından bir arabirim uygulamak için kullanılır. Java'daki bir arabirim, bu arabirimi uygulayan sınıflar tarafından uygulanması gereken bir sözleşmeyi belirtmek için kullanılan soyut bir türdür. Genellikle bir arabirim yalnızca yöntem imzalarını ve sabit bildirimleri 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, bir nesne referansının tipi, bir arayüz tipi olarak tanımlanabilir. Ancak bu nesne ya boş olmalı ya da o belirli arabirimi uygulayan bir sınıfın nesnesini tutmalıdır. Java'da Implements anahtar sözcüğünü kullanarak, tek bir sınıfa birden çok arabirim uygulayabilirsiniz. Bir Arayüz başka bir arayüzü uygulayamaz. Ancak bir arayüz bir sınıfı genişletebilir.

Uygulamalar ve Uzatmalar Arasındaki Fark

Uygulamalar ve Genişletmeler, Java programlama dilinde bir sınıfa öznitelikleri ve davranışı devralmak için bir mekanizma sağlayan iki anahtar kelime olsa da, iki farklı amaç için kullanılırlar. Implements anahtar sözcüğü, bir sınıfın belirli bir arabirimi uygulaması için kullanılırken, bir alt sınıfın bir süper sınıftan genişlemesi için Extends anahtar sözcüğü 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 üst sınıfı genişlettiğinde, üst sınıfta yer alan yöntemleri geçersiz kılabilir veya etmeyebilir. Son olarak, Uygulamalar ve Genişletmeler arasındaki bir diğer önemli fark, bir sınıfın birden çok arabirim uygulayabilmesi, ancak Java'da yalnızca bir süper sınıftan genişletilebilmesidir. Genel olarak, Uygulamaların (arayüzlerin) kullanımı, Uzatmaların (devralma) kullanımına kıyasla, daha yüksek esneklik ve eşleşmeyi en aza indirme yeteneği gibi çeşitli nedenlerle daha uygun kabul edilir. Bu nedenle pratikte, temel sınıflardan genişletmek yerine bir arabirime programlama tercih edilir.

Önerilen: