【问题描述】补充类Out的定义。Out类中包含一个内部类Inner、一个匿名内部类。

【问题描述】补充类Out的定义。Out类中包含一个内部类Inner、一个匿名内部类。

【输入形式】无输入

【输出形式】参考样例输出
【样例输入】无
【样例输出】

class Out$Inner say hello

class Out$1 say hello

【样例说明】
【评分标准】输出完全一致则为正确

public class Main{

    public  static  void  main(String[]  args)  {
          Out  out=new  Out();
          out.show();
    }

}

class Out {

    Inner  inner;
    MyListener  listener;

    Out()  {
            inner  =  new  Inner();
            listener  =

inner

    }

    void  show()  {
            System.out.println(inner);
            listener.onClick();
    }

}

interface MyListener {
void onClick();
}
完整代码是什么

Main.java不做修改
MyListener不做修改
Out.java如下所示

public class Out {
    Inner  inner;
    MyListener  listener;

    Out() {
        inner = new Inner();
        listener = new MyListener() {
            @Override
            public void onClick() {
                System.out.println("class Out$1 say hello");
            }
        };
    }

    void  show()  {
        System.out.println(inner);
        listener.onClick();
    }

    class Inner{
        @Override
        public String toString() {
            return "class Out$Inner say hello";
        }
    }
}