2016-09-28 70 views
0

假设我正在编写一个将其部分工作委托给现有方法的方法(调用构造函数的工厂方法就是一个很好的例子)。在IntelliJ中创建委派方法

我希望能够根据它调用的方法自动将参数添加到我正在编写的方法中。但是,IntelliJ似乎没有正确的捷径。例如:

class Foo { 
    Foo(ArgClass arg); 
} 

,我刚刚创建

class FooFactory { 
    Foo createFoo() { 
     return new Foo(); 
    } 
} 

是否有一个快捷方式(或它们的序列),这将让我的工厂

class FooFactory { 
    Foo createFoo(ArgClass arg) { 
     return new Foo(arg); 
    } 
} 

没有手动输入“arg”?

+0

你不能使用代码 - >委托方法?该功能是否正确?/ –

回答

0

我推荐这样做。复制粘贴&一次arg这里(|是文本光标):

class FooFactory { 
    Foo createFoo() { 
     return new Foo(arg|); 
    } 
} 

调用Alt键 + 输入并选择速战速决Create parameter 'arg'。出现Change Signature重构对话框,输入Ctrl + 输入接受。结果:

class FooFactory { 
    Foo createFoo(ArgClass arg) { 
     return new Foo(arg); 
    } 
} 
+0

正在尝试避免输入“arg”。由于许多函数参数具有很长的有意义的名字,这可能相当繁琐得很快。 – Arkadiy

+0

使用复制和粘贴? –

+0

当然,这是一个解决方案。 – Arkadiy