基本的に、同じことを行ういくつかのメソッドが必要ですが、サブクラスが選択できるパラメーターが異なり、それでも実装を強制します。これは正しいアプローチ/設計ですか?
編集: addItem() 本体を編集しました。これらのメソッドには、渡されたパラメーターを処理するために使用される最終的なロジックが含まれています
public abstract Class A {
public abstract void addItemImpl()
addItem(String s) {
// do stuff
}
addItem(Collection c) {
// do stuff
}
addItem(Item item) {
// do stuff
}
}
public Class B extends A {
addItemImpl() {
addItem("text, text2")
}
}
public Class C extends A {
addItemImpl() {
addItem([item, item2])
}
}