Java接口派生自类?

时间:2015-12-30 18:06:27

标签: java reflection

我正在开发一个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();
}

1 个答案:

答案 0 :(得分:-3)

Eclipse可以做到这一点。选择类名,右键单击并选择Refactor,然后选择Extract Interface。在结果对话框中,提供接口的名称并选择要提取的方法。 顺便说一句,当我自己尝试这个时,我在你发布的代码中发现了一个错误:getSomeData()中someData的引用应该是一个字段,而不是一个方法。