黑马程序员技术交流社区

标题: 笔试题,补全代码 [打印本页]

作者: shuibole    时间: 2015-9-4 22:34
标题: 笔试题,补全代码
按照要求,补齐代码
                interface Inter { void show(); }
                class Outer { //补齐代码 }
                class OuterDemo {
                        public static void main(String[] args) {
                                  Outer.method().show();
                          }
                }
                要求在控制台输出”HelloWorld”



作者: 陈劲松    时间: 2015-9-5 00:20
  1. interface Inter
  2. {
  3.         void show();
  4. }
  5. class Outer
  6. {
  7.         public static Inter method()
  8.         {
  9.                 return new Inter()
  10.                 {
  11.                         public void show()
  12.                         {
  13.                                 System.out.println("a");
  14.                         }
  15.                 };
  16.         }
  17. }
  18. class OuterDemo
  19. {
  20.     public static void main(String[] args)
  21.         {
  22.                 Outer.method().show();
  23.         }
  24. }
复制代码

作者: 陈劲松    时间: 2015-9-5 00:22
哦对了,13行的输出代码中的a是写的时候为了图省事,忘了改了,把a改成Hello World就行了。
作者: jbl3344    时间: 2015-9-5 00:28
楼上正解,匿名内部类。
作者: 0825王欢    时间: 2015-9-5 00:45
学习一下
作者: boboyuwu    时间: 2015-9-5 09:32
     
public static Outer method(){
   return new Outer();
}
    private void show(){
  System.out.println("a");
}

别那么麻烦几句就搞定的事
作者: jumtop    时间: 2015-9-5 10:12
谢谢分享
作者: 石少星@    时间: 2015-9-5 11:30
匿名内部类的问题,还要注意静态,返回值的问题
作者: sansu    时间: 2015-9-5 12:10
boboyuwu 发表于 2015-9-5 09:32
public static Outer method(){
   return new Outer();
}

按照要求,补齐代码,补齐不是修改。注意看题。
作者: ln0491    时间: 2015-9-5 13:02
学习了。。。
作者: boboyuwu    时间: 2015-9-5 13:19
sansu 发表于 2015-9-5 12:10
按照要求,补齐代码,补齐不是修改。注意看题。

哦 那就在类里面建立一个内部类实现接口   返回一个内部类对象调用里面的SHOW就行了
作者: xiekeshu    时间: 2015-9-5 14:07
让Outer实现接口,在类Outer中重写show()方法不就行了吗




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2