黑马程序员技术交流社区

标题: public static Inter method(){ 里的Inter怎么理解? [打印本页]

作者: lidebin    时间: 2016-2-27 12:08
标题: public static Inter method(){ 里的Inter怎么理解?
class Test2_NoNameInnerClass {
        public static void main(String[] args) {
                Outer.method().show();
        }
}
interface Inter {
        void show();
}
class Outer {
        public static Inter method(){
                return new Inter(){
                        public void show(){
                                System.out.println("helloworld");
                        }
                };
        }
}
//public static Inter method(){ 里的Inter怎么理解?


作者: huang_bing_hua    时间: 2016-2-27 13:00
可以参见我总结的面试题:http://bbs.itheima.com/thread-279058-1-1.html
从 Outer.method().show();我们可以分析出这几点:
1.method可以直接被Outer类调用,说明method是静态方法 static method()
2.Outer.method还可以调方法,说明它返回的是一个类的具体对象,而show方法只有接口Inter有,表明Outer.method的作用是返回接口Inter的具体实现对象,如何实现做到这一点呢?
:method这个静态方法的返回值类型得是引用类型,即接口,返回值类型的位置写上接口名Inter即可,也就是你疑惑的地方

作者: lidebin    时间: 2016-2-27 14:47
看得懂,就是不知道怎么理解,恐怕一面试就完蛋啦




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