我从Java 1.4(之前的公司)转移到了Java 1.6(新公司)。我发现,在1.4中,大多数专有框架都是使用接口和模板模式定义的,而在1.6中,大多数框架都是围绕泛型定义的。
虽然我仍在努力掌握泛型,但我的问题是 - 这是正确的设计方法吗?接口使你的设计更加灵活/解耦。而泛型实现了类型安全,并强制你传递特定类型的类。这并不真正有助于解耦你的代码。这样正确吗?
一个例子 -
public MyWizard extends SignupWizard<SignupSection, SignupObject, SignupListener, SignupView>{
}
如果设计更具灵活性,那就应该...
public interface Wizardable{
public SignableSection getSection();
public SignableObject getSignableObject();
...
}
public MyWizard implements Wizardable{
....
}