Convert Anonymous to Inner Refactoring  

 

�� ������ ��ſ��� Convert Anonymous to Inner  ï¿½ï¿½ï¿½ï¿½ï¿½ä¸µ �󿡼� �������� overview��  how ï¿½ï¿½ �����丵�� IntelliJ IDEA���� ���� �� �ִ°��� �����մϴ�.

����


Convert Anonymous to Inner ï¿½ï¿½ï¿½ï¿½ï¿½ä¸µï¿½ï¿½ �͸��� Ŭ������ �̸��ִ� ������ ������ �ٲٱ� ���� ���˴ϴ�.   ���� �͸��� Ŭ������ �ܺ� �޼ҵ�κ����� � ���� ������ ����ϰ�, ������ ������ Ŭ������ �����ڿ��� �� �����μ� �dz����� ���� �����Ѵٸ�, IDEA�� �ڵ������� �����մϴ�.  ï¿½ï¿½ ���, ���ο� �̸��ִ� ���� Ŭ������ ����ǰ� �͸��� Ŭ���� �ڵ�� ���� Ŭ���� �ν��Ͻ� �������� ��ü�˴ϴ�.

���� ���, �츮�� �����丵 ���� ���� �ڵ带 �����ϴ�:

 
    public class OuterClass {
        public AnInterface foo() {
            final int local = 1;
            return new AnInterface() {
                public int function() { return local; }
            };
        }
    }


�������̽� AnInterface�� ����� ��:

 
    public interface AnInterface {
        int function();
    }


Convert Anonymous to Inner ï¿½ï¿½ï¿½ï¿½ï¿½ä¸µ ���� �ڵ�� ������ ���� ���� ���Դϴ�:

 

    public class OuterClass {
        public AnInterface foo() {
            final int local = 1;
            return new TheClass(local);
        }
 
        ...//some code here
 
        private class TheClass implements AnInterface {
            private final int local;
 
            public TheClass(int local) {
                this.local = local;
            }
 
            public int function() {
                return local;
            }
        }
    }



Converting Anonymous to Inner  


 1.   ï¿½Í¸ï¿½ï¿½ï¿½ Ŭ������ ������ ������ �ٲٱ� ����, ������� ���� Ŭ���� ���� ��� ���� ij���� ��ġ�Ͻʽÿ�. �׸��� �� �޴����� �Ǵ� �����Ϳ��� ������ ��ư�� Ŭ���Ͽ� �ҷ����� �˾� �޴����� Refactor Convert Anonymous to Inner...  ï¿½×¸ï¿½ï¿½ï¿½ Ŭ���մϴ�.   ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ Convert Anonymous to Inner�� ��Ÿ���ϴ�:



 2.   Class name ï¿½Ø½ï¿½Æ® �ʵ忡��, ���ο� Ŭ������ �̸��� �����Ͻʽÿ�.

 3.   Parameters  ï¿½ï¿½Ï¿ï¿½ï¿½ï¿½

  ����� �Ѱ����� Ư���� ������ ������ �� �ִ� ������ üũ�ڽ��� ���� �����ϴ� �Ϳ� ���� ������ �� �����μ� �Ѱ����� ������ �־����ϴ�; ���� �� ������ �Ұ����ϸ�, �����ϴ� Ÿ���� �ʵ�� ���� Ŭ�������� ������ ���̰�, �ʱⰪ�� �Բ� �����ڿ��� �ʱ� ���·� ���� �� �Դϴ�. �׷���  ï¿½ï¿½ï¿½ï¿½ï¿½ ������ ������ �̴ϼȶ������� �������� �Է��ؾ߸� �� ���Դϴ�.

  ���ϴ� �� ������ �����ϴ� �� ���� ������ ���� Ŭ���ϰ�, ���ο� �̸��� �Է��Ͽ� �̸��� �ٲ��� �� �ֽ��ϴ�.


 4.   ï¿½ï¿½ï¿½ï¿½ï¿½Ú¿ï¿½ �Ѿ�� �� ������ ������ �����ϱ� ���� Move up �� Move down ï¿½ï¿½ ����մϴ�.

 5.   OK ï¿½ï¿½ Ŭ���Ͻʽÿ�.  ï¿½ï¿½ï¿½Î¿ï¿½ �̸��ִ� ���� Ŭ������ ������ ���Դϴ�. �׸��� �͸��� Ŭ������ �ִ� �ڵ� �����׸�Ʈ�� ���� Ŭ���� �ν��Ͻ� �������� ��ü�� ���̰� ���� �̸��ִ� ���� Ŭ������ ������ ��� �ڵ忡 �߰��� ���Դϴ�.