【初心者】Java質問・相談スレ51【大歓迎】
■ このスレッドは過去ログ倉庫に格納されています
0239デフォルトの名無しさん
NGNGこういう方が好きだなぁ。リフレクションと違ってコンパイル時に名前解決するし。
クラスだらけになるけど。
なお、必要なければいちいち create せずに Caller のコンストラクタで一個用意してもいいし。
public interface MyFunction {
public void funcX(String str);
}
public class Caller {
void func() {
MyFunction[] funcs = { createFuncA(), createFuncB(), createFuncC() };
//略
funcs[index].funcX(str);
}
public MyFunction createFuncA() {
return new MyFunction() {
public void funcX(String str) {
//場合によっては TheClass の内部にアクセスするなんやかや
}
};
}
public MyFunction createFuncB() {
return new MyFunction() { /*略*/ };
}
public MyFunction createFuncC() {
return new MyFunction() { /*略*/ };
}
}
■ このスレッドは過去ログ倉庫に格納されています