Java'da Sınıf ve Arayüz Arasındaki Fark

Yazar: Laura McKinney
Yaratılış Tarihi: 2 Nisan 2021
Güncelleme Tarihi: 8 Mayıs Ayı 2024
Anonim
Java'da Sınıf ve Arayüz Arasındaki Fark - Teknoloji
Java'da Sınıf ve Arayüz Arasındaki Fark - Teknoloji

İçerik


Hem sınıf hem de Arayüz yeni referans türleri oluşturmak için kullanılır. Sınıf, alanlar üzerinde çalışan alanlar ve yöntemler topluluğudur. Arayüz tamamen soyut yöntemlere, yani kimsenin olmadığı yöntemlere sahiptir. Arabirim, sözdizimsel olarak sınıfa benzer, ancak bir sınıfın başlatılabileceği sınıf ve arabirim arasında büyük bir fark vardır, ancak bir arabirim hiçbir zaman başlatılamaz. Bu yüzden, aşağıda gösterilen bir karşılaştırma çizelgesinin yardımı ile bir sınıf ve arayüz arasında biraz daha fark öğrenelim.

  1. Karşılaştırma Tablosu
  2. Tanım
  3. Anahtar Farklılıklar
  4. Sonuç

Karşılaştırma Tablosu

Karşılaştırma için temelSınıfarayüzey
TemelNesneleri oluşturmak için bir sınıf başlatılır.Bir arayüz asla başlatılamaz, çünkü metotlar çağırmak için herhangi bir işlem yapamaz.
Kelimesınıfarayüzey
Erişim belirteciBir sınıfın üyeleri özel, genel veya korumalı olabilir.Bir arayüzün üyeleri her zaman herkese açıktır.
Yöntemler Bir sınıfın yöntemleri, belirli bir eylemi gerçekleştirmek için tanımlanır.Arayüzdeki yöntemler tamamen soyut.
Uygulamak / uzatınBir sınıf, herhangi bir sayıda arayüzü uygulayabilir ve yalnızca bir sınıfı genişletebilir.Bir arayüz, birden fazla arayüzü genişletebilir, ancak herhangi bir arayüzü uygulayamaz.
inşaatçı Bir sınıf, değişkenleri başlatmak için yapıcılara sahip olabilir.Arabirim hiçbir zaman bir kurucuya sahip olamaz çünkü başlatılması zor bir değişken yoktur.


Sınıfın Tanımı

Bir sınıf, bir java programını uygulayamayacağınız sınıflar olmadan Java programlamanın en önemli özelliğidir. Bir sınıf referans türleri yaratır ve bu referans türleri nesne oluşturmak için kullanılır. Bir sınıfın bir imzası ve bir vücudu vardır. Bir sınıfın imzası, sınıfın başka bir sınıfa miras aldığını bildiren bir isim ve bilgiye sahiptir. Bir sınıfın gövdesinde bu alanlarda çalışan alanlar ve yöntemler vardır. Bir anahtar kelime kullanılarak bir Sınıf oluşturulur sınıf. Bir sınıfı nasıl ilan edeceğimizi görmemize izin verin.

sınıf class_name {/ * fields ... Methods * /}

Bir sınıf başlatıldığında, oluşturulan her nesne bir alanların kopyasını ve bunlarla birlikte yöntemlerini içerir. Bir sınıf içinde bildirilen alanlar ve üyeler statik veya statik olmayabilir. Statik üyelerin değeri, her nesne için sabittir, ancak statik olmayan üyeler, gereksinimlerine göre farklı olarak her nesne tarafından başlatılır.


Bir sınıfın üyeleri, üyelerin kullanıcıya veya alt sınıflara görünürlüğüne ve erişilebilirliğine karar veren erişim belirtecine sahiptir. Erişim belirleyicileri herkese açık, özel ve korumalıdır. Bir sınıf, bir alt sınıftaki (kalıtsal bir sınıf) üyelerin görünürlüğüne bir alt sınıfta (kalıtımsal sınıf) görünmesine karar verecek olan erişim belirteci kullanılarak başka bir sınıf tarafından miras alınabilir. Böylece sınıf, Nesne Yönelimli programlamada veri gizleme ve kapsülleme kavramını yerine getirir.

Arabirimin Tanımı

Bir arayüz ayrıca Java'da tanımlanan referans türleri arasındadır. Arabirimin önemi, Java'da bir sınıfın yalnızca tek bir sınıfa miras alabilmesidir. Bu kısıtlamayı önlemek için, Java tasarımcıları bir arayüz kavramı ortaya koydu. Arabirim, sözdizimsel olarak bir sınıfa benzer, ancak alan bildiriminde yoksundur ve bir arabirim içindeki yöntemlerde herhangi bir uygulama yoktur. Bir anahtar kelime kullanılarak bir arayüz bildirildi arayüzey. Bir arayüzün bildirimini görüntüleyelim.

interface interface_name {type var_name = değer; type1 yöntemi (parametre listesi); type2 yöntemi (parametre listesi); . . }

Arabirim, üzerinde çalışılacak alanlardan yoksun olduğundan, kendi içinde bildirilen herhangi bir yöntemi tanımlamaz. Bir arabirim içindeki herhangi bir yöntem herhangi bir işlem gerçekleştirmediğinden, bir arabirim hiçbir zaman başlatılamaz. Arabirimin herhangi bir alan üyesi varsa, bildirimi sırasında başlatılmalıdır. Arabirim, başlangıçta almak için alan üyelerinde bulunmadığından hiçbir zaman kurucu içermez. Dolayısıyla, bir arayüz sadece bir sınıfın yapması gereken yerine ne yapması gerektiğini tanımlar.

Bir kez oluşturulmuş bir arayüz, bir anahtar kelime kullanarak herhangi bir sayıda sınıf tarafından uygulanabilir. uygular. Ancak bir arabirim uygulayan sınıflar bir arabirim içindeki tüm yöntemleri tanımlamalıdır. Bir arabirim ayrıca kullanarak başka bir arabirim devralabilir uzatmak Anahtar kelime. Bir sınıf başka bir arayüzü genişleten bir arayüz uygularsa. Daha sonra bir sınıf, bir zincirde görünen arayüzlerin yöntemlerini tanımlamalıdır. Bir arabirim içindeki yöntemlere, bunları uygulayan sınıflar tarafından erişilmesi gerektiği için her zaman halka açık olması gerekir.

Java'da Sınıf ve Arayüz Arasındaki Temel Farklılıklar

  1. Bir nesne, nesneler yaratarak başlatılabilir. Bir arabirim içinde bildirilen yöntemler soyut olduğundan ve herhangi bir eylem gerçekleştirmediğinden, arabirim hiçbir zaman başlatılmaz, dolayısıyla herhangi bir arabirimin başlatılmasının bir yolu yoktur.
  2. Anahtar kelime sınıfı kullanılarak bir sınıf ilan edilir. Aynı şekilde, bir anahtar kelime arayüzü kullanılarak bir arayüz oluşturulur.
  3. Bir sınıfın üyeleri, kamu, özel, korumalı gibi erişim belirticisine sahip olabilir. Ancak, bir arayüzün üyeleri, bunları uygulayan sınıflar tarafından erişilmesi gerektiği için her zaman herkese açıktır.
  4. Bir sınıf içindeki yöntemler, sınıfta bildirilen alanlarda bir eylem gerçekleştirmek için tanımlanır. Arabirim alanların bildirimlerinde eksik olduğundan, bir arabirim içindeki yöntemler tamamen soyut.
  5. Bir sınıf, herhangi bir sayıda arayüzü uygulayabilir, ancak yalnızca bir süper sınıfı genişletebilir. Bir arayüz herhangi bir sayıda arayüzü genişletebilir, ancak herhangi bir arayüzü uygulayamaz.
  6. Bir sınıf değişkeni başlatmak için içinde tanımlanmış yapıcılara sahiptir. Ancak, bir arayüz, başlatılacak alan olmadığından herhangi bir kurucuya sahip değildir. Arabirimin alanları yalnızca bildirimleri sırasında başlatılır.

Sonuç:

Hem sınıfların hem de arayüzlerin kendi önemi vardır. Görevin nasıl yapılacağını tanımlamamız gerektiğinde bir sınıf kullanılır. Hangi görevin yapılması gerektiğini bilmemiz gerektiğinde bir arayüz kullanılır.