A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 八戒 中级黑马   /  2015-3-28 13:11  /  645 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

今天来一发重量级的,保证大家学会后感觉自己瞬间高大上了。(友情提示:考点内部类)
(面试题)
1.interface Inter {
                public abstract void show();
}
class Outer{
              //补全代码
}
class Test{
                public static void main(String[] args){
                             Outer.method().show();//输出"我爱学编程"
                }
}
2.public class Test{
             public static void main(String[] args){
                         if(......){      //括号中填写内容使控制台输出hello world
                                     System.out.print("hello");
                         }else{
                                    System.out.println("world");
                         }
             }
}
以下是我个人的观点仅供参考,而我个人更希望能和大家多多讨论,共同进步:
第一题:
看到这个填代码的题,首先我们应该从主函数的main方法中寻找突破口,看到Outer.method()说明了method是一个
静态的方法,(因为可以用类名直接调用),其次是又.了一个show方法,因为show方法是Inter接口的一个抽象方法,
要想使用就先要实例化,所以不难看出Outer.method()返回的是一个Inter接口对象,并且还重写了Inter接口中的show
方法,所以答案也就差不多出来了.
第二题:
看到这个题你首先想到的应该是肯定要在main方法shang做文章,因为按照常理来说if语句和else语句中只能执行一个,
而要执行两个的话我想到的只有一个方法,那就是用匿名内部类传参先执行一个判断,然后再通过主函数的main在执行另一个
判断,所以答案也就差不多出来了.
答案见下方
游客,如果您要查看本帖隐藏内容请回复

1 个回复

倒序浏览
真的有答案么
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马