temel fark Java'da Paket ve Arayüz arasında Paket, sınıflara kolayca erişmek ve onları korumak için yöntemsel olarak kategorilere ayırmaya yardımcı olurken, Interface birden fazla mirasın uygulanmasına ve soyutlamaya ulaşılmasına yardımcı olur.
Java, en popüler programlama dillerinden biridir. Java'nın temel avantajı, Nesneye Yönelik Programlamayı desteklemesidir. Bu metodoloji, gerçek dünyadaki nesnelerin yazılımda modellenmesini sağlar. Sınıf, bir nesne oluşturmak için kullanılan bir taslaktır. Her nesne, nitelikleri tanımlayan veri veya alanlar veya davranışları tanımlayan özellikler ve yöntemler içerir. Bu makalede, Java'da Java'daki OOP ile ilgili Paket ve Arabirim olmak üzere iki kavram anlatılmaktadır.
1. Genel Bakış ve Temel Fark
2. Java'da Paket Nedir
3. Java'da Arayüz nedir
4. Yan Yana Karşılaştırma - Tabular Formunda Java ile Package vs Interface
5. Özeti
Java çok sayıda sınıf sağlar. Tüm sınıfları tek bir klasörde tutmak zor olabilir çünkü erişimi zordur. Bu programın yönetilebilirliğini etkileyebilir. Java, sınıfları düzenlemek için paketleri kullanır. Bir klasöre benzer. Java API, sınıfları işlevselliğe göre farklı paketler halinde gruplandırır. Bu nedenle, her paket ilgili bir sınıf kümesi içerir.
Birkaç örnek paket aşağıdaki gibidir. Java.io paketi girdi, çıktı destekleyici sınıfları içerir. Dosya, PrintStream, BufferInputStream vb. İçerir. Java.net paketi ağ ile ilgili sınıfları içerir. URL, Soket, ServerSocket bunlara örnektir. Java.awt paketi, Grafik Kullanıcı Arabirimleri oluşturmak için gereken tüm sınıfları içerir. Bunlar birkaç Java API paketi.
Programcı programda belirli bir sınıfı kullanmak istediğinde, o paketi alması gerekir. Programcı java.io paketinde BufferInputStream sınıfını kullanmak istiyorsa, import deyimini aşağıdaki gibi yazmalıdır..
import java.util.BufferInoutStream;
Aşağıdaki ifade, util paketindeki tüm sınıfları içe aktarır.
içe aktar java.util. *;
Kullanıcı tanımlı paketler oluşturmak da mümkündür.
paket çalışanı;
herkese açık sınıf Çalışanı
Yukarıdaki örneğe göre, çalışan paket adıdır. Employee sınıfı, çalışan paketinin bir parçasıdır. Bu dosya Employee.java olarak çalışan paketine kaydeder.
Ayrıca, ortak bir sınıfı bir paketten diğerine aktarmak mümkündür. Aşağıdaki örneğe bakın.
Resim 01: Sınıf A
Resim 02: Sınıf B
A sınıfı paket 1'de yer alır ve display adı verilen genel yöntemi içerir. Sınıf B, paket 2'de bulunur ve ana yöntemi içerir. Ayrı paketlerde olmalarına rağmen; B sınıfı, package1'i içe aktararak A sınıfı bir nesne oluşturabilir. 1. paketi içe aktardıktan sonra, B sınıfı A sınıfı verilere ve yöntemlere erişebilir.
Genel olarak, Java'daki Paket proje dosyalarının düzenlenmesine yardımcı olur. Bu, büyük dosyaları geliştirirken çok kullanışlıdır, çünkü tüm dosyaları metodik bir şekilde saklar. Buna ek olarak, Java API paketleri programcıların zaten var olan sınıfları kullanmasına izin verir.
Bazen programcı yöntemin tanımını bilmeyebilir. Bu durumlarda, programcı yalnızca yöntemi bildirebilir. Soyut bir yöntem, tanımı olmayan bir yöntemdir. Sadece beyanı var. En az bir soyut yöntem olduğunda, bu sınıf soyut bir sınıf haline gelir. Dahası, soyut sınıf hem soyut yöntemleri hem de soyut olmayan yöntemleri içerebilir. Programcı soyut sınıflardan nesne oluşturamaz.
Bir sınıf soyut bir sınıfı genişlettiğinde, yeni sınıf soyut sınıftaki tüm soyut yöntemi tanımlamalıdır. Başka bir deyişle, soyut sınıf A'nın display adı verilen soyut bir yöntemi olduğunu varsayalım. B Sınıfı A sınıfını genişletir. Ardından B sınıfı yöntem ekranını tanımlamalıdır.
A ve B'nin soyut sınıflar olduğunu varsayın. C sınıfı A ve B'yi genişletiyorsa, bu C sınıfı her iki sınıfın da soyut yöntemlerini tanımlamak zorundadır. Bu çoklu miras. Java, birden fazla kalıtımı desteklemez. Bunu uygulamak için, programcı arayüzleri kullanmalıdır. A ve B arayüzler ise, C sınıfı bunları uygulayabilir. Aşağıdaki örneğe bakın.
Resim 03: Arayüz A
Resim 04: Arayüz B
A arabiriminin display1 soyut yöntemi vardır ve B arabiriminin display2 soyut yöntemi vardır.
Resim 05: Sınıf C
C Sınıfı, hem A hem de B arabirimlerini uygular. Bu nedenle, her iki yöntemi de tanımlamalıdır.
Şekil 06: Ana Yöntem
Şimdi ana yöntemde, bir C nesnesi oluşturmak ve her iki yöntemi çağırmak mümkündür. Aynı şekilde, arayüzler Java'da çoklu kalıtımın uygulanmasına yardımcı olur.
Çoklu kalıtım dışında, arayüzler soyutlamaya ulaşmaya yardımcı olur. OOP'ta önemli bir kavram. Soyutlama, uygulama ayrıntılarını gizlemeye ve kullanıcıya yalnızca işlevselliği göstermeye izin verir. Ayrıca, nesnenin nasıl yapıldığı yerine ne yaptığına odaklanmaya izin verir. Bir arayüz soyut yöntemlerden oluştuğu için, soyutlamanın arşivlenmesine yardımcı olur.
Paket, erişim koruması ve ad alanı yönetimi sağlayan ilgili sınıflardan oluşan bir gruptur. Arayüz, soyut yöntemlerin bir koleksiyonu olan sınıfa benzer bir referans türüdür. Paket, kolayca erişebilmek ve onları korumak için sınıfları metodik olarak kategorilere ayırmaya yardımcı olur. Öte yandan, Interface birden fazla mirasın uygulanmasına ve soyutlamanın sağlanmasına yardımcı olur. Java'daki Paket ve Arayüz arasındaki temel fark budur. Ayrıca, bir paket yazmanın yolu java.util, java.awt gibi küçük harflerdir. Arabirimin adı Alan ise, o zaman Arabirim Alanı olarak yazılır..
Java'daki Paket ve Arayüz arasındaki fark, Paket'in sınıflara kolayca erişmek ve bunları korumak için yöntemsel olarak sınıflandırmasına yardımcı olurken, Arayüz birden fazla mirasın uygulanmasına ve soyutlamaya ulaşılmasına yardımcı olur..
1. Öğreticiler Noktası. “Java Paketleri.” Tutorials Point, 24 Mart 2018. Buradan ulaşabilirsiniz
2. Öğreticiler Noktası. “Java Arayüzleri.” Tutorials Point, 24 Mart 2018. Buradan ulaşabilirsiniz