使用重定向生成代码IntelliJ Idea 15

时间:2016-02-25 18:51:27

标签: java intellij-idea code-generation intellij-15

我有一个这样的课程:

public class BukkitPlayerWrapper implements Player {
    private Player p;

    public BukkitPlayerWrapper(Player p) {
        this.p = p;
    }
}

但是Player接口有很多方法,是否有一种方法可以在intelliJ中生成这样的代码?

@Override
public String getDisplayName() {
    return p.getDisplayName();
}

@Override
public void setDisplayName(String s) {
    p.setDisplayName(s);
}

因为手工编写需要数小时。

1 个答案:

答案 0 :(得分:2)

我不确定你要找的是什么,但如果你有一个接口,例如

public interface ExampleInterface {

    void method1();

    void method2();
}

并创建一个实现接口的类并具有成员变量:

public class SomeClass implements ExampleInterface {
    public ExampleInterface exampleInterface;

}

你可以将插入符号放在类中的某个位置并点击Alt + Insert,它应该会给你这个上下文菜单:

context menu
然后你点击Delegate Methods...,你就会得到这个:

context menu 2 选择目标成员变量

enter image description here
最后你想要委派的方法,你最终得到类似的东西:

public class SomeClass implements ExampleInterface {
    public ExampleInterface exampleInterface;

    @Override
    public void method1() {
        exampleInterface.method1();
    }

    @Override
    public void method2() {
        exampleInterface.method2();
    }
}

希望这有点帮助(: