2010-09-14 32 views
5

TransactionStatus ve TransactionDefinition, diğer iki arabirime başvurular içeren Spring'in PlatformTransactionManager tanımına bakıyordum.Bir arayüz tanımının diğer arayüzlere referans içermesi kabul edilebilir mi?

Bu genel olarak kabul edilebilir mi, başka arayüzlere referanslar içeren bir arayüz tanımı mı? Ne zaman yararlı olur?

+0

Açıklama için hepinize teşekkür ederim, tahmin et şimdi bu stili takip etmeye çalışacağım. Arayüzümün yöntemleri şimdiye kadar sadece temel türleri kullanma eğilimindedir, bunu değiştireceğim. –

cevap

8

Evet, kabul edilebilir. Neden olmasın?

Değerler için somut sınıflar yerine Arayüzlere başvurmak daha da iyidir.

+3

Tam olarak. İyi tasarlanmış bir API olan IMHO, genellikle arayüzleri, işaretleri ve ek açıklamaları gösterebilir, ancak hiçbir somut sınıf içermez. –

4

Kesinlikle kabul edilebilir. Bazen türlerin diğer türlere atıfta bulunmaları gerekir - ve eğer bu türler potansiyel olarak karmaşık hizmetleri temsil ediyorsa, genellikle bir arayüz şeklinde genel bir türünü soyutlayabilmek yararlıdır.

0

Olası ... çoklu kalıtım uygulanmasında anahtar yönlerinden Thats biri

+0

Bu soruyla nasıl ilgili? – whiskeysierra

+0

@Willi - Net olmayan şeylerden emin değilsiniz. Sorulan iki şey var. 1) diğer arayüzlerin referansları mümkün ise ve 2) yararlı olduğunda. Her ikisine de cevap vermişim gibi görünüyor. Eğer açıklayabiliyorsan karışıklık nedir, cevabımı düzeltebilirim. –

+0

Soru, * kabul edilebilir * ve * yararlı * yerine * mümkün * olanla ilgili değildir. Ve diğer türlere (veya bu durumda arayüzlere) atıfta bulunmak, kalıtsallıkla hiçbir ilgisi yoktur. – whiskeysierra

0

Evet. Bu mümkün. Herhangi bir problem yaratabileceği herhangi bir senaryoyu düşünemiyorum.

İlgili konular