Arayüzler, arayüzleri uygulayan sınıflar ve müşterileri arasında bir sözleşme tanımlar. Bunlar, istemcilerin "belirli bir davranışı olan şeyleri" manipüle edebilmeleri için bir soyutlama mekanizması olarak kullanılır.
Yani "bu arayüzü oluşturmalı ve kullanmalı mıyım?" Sorusunun genel cevabı. : Evet, müşterilerinizle anlamsal olarak alakalı (tek bir kavram) kavramını ilişkilendirebiliyorsanız.
Örneğin, Karşılaştırılabilir iyi bir arayüzdür, çünkü yöntemlerden biri sayesinde şeylerin karşılaştırılabileceğini açıklar ve bir müşteri olarak karşılaştırılabilir nesnelerle (örneğin bunları sıralamak için) ilgilenmek isterim. Bir aksine, CoolStuff , serin nesnelerin belirli bir davranışa sahip olmadığını itiraf ederseniz iyi bir arayüz değildir (aslında, serin nesnelerle uğraşmanın mantıklı olduğu bir yazılım hayal edebilirsiniz, çünkü beCool gibi ortak bir davranışa sahiptirler. yöntem).
Sizin durumunuzda, arayüzünüzün yararsız olduğuna inanıyorum. Kim kullanacak, nasıl ve ne zaman? Değiştirilebilir değerlerin her biri için bir arabirim oluşturamazsınız. Öyleyse kendinize yöntemlerinizin ardındaki ilgili ve ilginç özelliklerin ne olduğunu sorun.
İstediğiniz tüm değişken değerleri birkaç yöntemle erişilebilen nesnelerle uğraşıyorsanız, Java fasulyesi kavramına ve sınıflarınızı sözleşmelerini benimsemeye nasıl zorlayabileceğinize bir göz atın.