나는 인 IntelliJ는이 대리자 메서드를 생성하기위한 옵션을 "생성"을 가지고 것으로 나타났습니다 //. 새로운 클래스 만들기 :
가 그런하는 MyInterface 표시를> 코드> 위임 방법, 당신은 포장 할 모든 방법을 선택 메뉴로 이동하고 그게 다에요. 갱신
데코레이터를 생성하려는 인터페이스로 이동하십시오.
public interface MyInterfaceWithManyMethods {
void method1();
void method2();
void method3();
}
Alt + Enter를 누르고 "구현 인터페이스"를 선택하고 "MyDecorator"와 같은 장식 자의 이름을 지정하십시오. Enter 키를 누릅니다, 사용자 인터페이스를 선택> "대표단 상속을 교체"모든 메소드 이름을 선택합니다 - 이것은 다음 "팩터는"클래스 이름을 선택, 새로운 클래스에서 당신에게
public class MyDecorator implements MyInterfaceWithManyMethods {
public void method1() {
}
public void method2() {
}
public void method3() {
}
}
을 제공합니다. 당신은 얻을 것이다 :
public class MyDecorator {
private final MyObject object = new MyObject();
public void method1() {
object.method1();
}
public void method2() {
object.method2();
}
public void method3() {
object.method3();
}
private class MyObject implements MyInterfaceWithManyMethods {
public void method1() {
}
public void method2() {
}
public void method3() {
}
}
}
내부 클래스와 개체 이니셜 라이저를 수동으로 삭제하십시오. 당신이 얻을 :
public class MyDecorator {
public void method1() {
object.method1();
}
public void method2() {
object.method2();
}
public void method3() {
object.method3();
}
}
Alt 키는 빨간색으로 표시되어 "객체"에 입력 +, "필드 만들기"를 선택, 선택 MyInterfaceWithManyMethods을.
public class MyDecorator {
private MyInterfaceWithManyMethods object;
public void method1() {
object.method1();
}
public void method2() {
object.method2();
}
public void method3() {
object.method3();
}
}
는 "생성자 매개 변수 추가"를 선택, 개체 변수, Alt 키를 선택 + 입력 : public class MyDecorator {
private MyInterfaceWithManyMethods object;
public MyDecorator(MyInterfaceWithManyMethods object) {
this.object = object;
}
public void method1() {
object.method1();
}
public void method2() {
object.method2();
}
public void method3() {
object.method3();
}
}
을 당신은 그것을 모두 Alt + Enter를 몇 스트로크로 이루어집니다 참조하십시오. 많은 일을 읽지 만 20 초 이내에 끝낼 수 있습니다. 2 ~ 3 가지 방법 만 있으면 라이브 템플릿을 사용하는 것이 더 빠를 수 있습니다. 그러나 복잡한 서명이있는 여러 가지 방법이있는 경우이 방법으로 약 20 초 안에 작업 결과를 얻을 수 있습니다. + 단순히 입력 Alt를 바위 : D
클래스를 처음부터 만들 때 어떻게 작동하는지 모르겠습니다. –
전체 설명을 추가했습니다. –
Thx +1 완전한 대답 :).템플릿을 만들 때 파일을 만든 다음 하나의 "Alt + Inser"만 만들어야하기 때문에 파일 템플릿을 작성했습니다. 생성 시간은 솔루션과 거의 같아야하지만 키보드 조작은 적습니다. –