我正在开发一个Android框架(https://www.github.com/IanSwift/jumper),它采用数据模型类,并在创建或更新视图时使用反射来更新视图。我为此使用动态代理工厂,我目前让用户输入真实对象和指定任何状态更改方法的接口。我的问题是,有没有一种方法代码可以从类中自动生成一个接口?它看起来像这样。
Class<?> derivedInterface = somehowGetAnInterface(Original.class)
其中original是一个类似的实例:
public class Original {
String someData;
public void setSomeData(String s) {
someData = s;
}
public String getSomeData() {
return someData();
}
}
派生接口在编译时或运行时创建,但看起来像这样:
public interface OriginalInterface {
public void setSomeData(String s);
public String getSomeData();
}
答案 0 :(得分:-3)
Eclipse可以做到这一点。选择类名,右键单击并选择Refactor,然后选择Extract Interface。在结果对话框中,提供接口的名称并选择要提取的方法。 顺便说一句,当我自己尝试这个时,我在你发布的代码中发现了一个错误:getSomeData()中someData的引用应该是一个字段,而不是一个方法。