【初心者】Java質問・相談スレッド106【大歓迎】
■ このスレッドは過去ログ倉庫に格納されています
0331デフォルトの名無しさん
2007/09/28(金) 14:22:33まだ眠いやw
ExtendedTableModelがTableModelを継承するのが元凶なので、それを回避する方針は変えないとして、
ExtendedTableModel内でTableModelの機能を使いたいのならExtendedTableModelがTableModelを持てばいいと思う。
public interface ExtendedTableModel {
void setModel(TableModel model);
void addedTableModelMethod();
}
にして、ExtendedJTableは>>316のままで、ExtendedTableModelの実装は例えば、
class DefaultExtendedTableModel implements ExtendedTableModel {
TableModel model = new DefaultTableModel();
public void setModel(TableModel model) {
this.model = model;
}
public void addedTableModelMethod() {
model.getRowCount();//TableModelの機能を使用するとき
}
}
コンストラクタでTableModelを指定することを強制するExtendedTableModelの実装もありだろうし。
ExtendedTableModelを抽象クラスにして、TableModelを持たせる部分あたりはExtendedTableModelで実装してしまう手も。
■ このスレッドは過去ログ倉庫に格納されています