基本的に、JFrame内のすべてのコンポーネントをスキャンし、メソッドsetTitle(String arg0)があるかどうかを確認し、ある場合は、タイトルを「foo」に設定します。ただし、タイトルを設定するには、適切なオブジェクトにキャストする必要があります。
public void updateTitle(Container root){
for (Component c : root.getComponents()){
String s = "";
for (Method m : c.getClass().getDeclaredMethods()){
s += m.getName();
}
if (s.contains("setTitle")){
c.setTitle("foo"); //Here is where I need the casting
}
if (c instanceof Container){
updateTitle((Container) c);
}
}
}
問題は、それがどのクラスかわからないことです。それ自体にキャストする方法はありますか、それとも他のことを試してみる必要がありますか?