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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 320215787 中级黑马   /  2016-4-24 11:12  /  761 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

package helloworld;
interface Inter{
        void show();
}
class Outer{
        public static Inter method(){
                return new Inter(){
                        public void show(){
                                System.out.println("helloworld");
                        }
                };
        }
}
public class HelloWorld {
        public static void main(String[] args){
                Outer.method().show();
        }
}
class Outer 中 static后面为什么是Inter?好迷糊  

6 个回复

倒序浏览
返回值是Inner类型的,
实际返回的是Inner接口的一个实现类的对象.
采用的是匿名内部类方式返回了一个对象

点评

原来是这个意思啊 懂了 谢了  发表于 2016-4-24 11:42
回复 使用道具 举报
Inter是一个引用对象,即返回值的类型,显现了Inter接口,应为接口不能被实例化,就是返回的一个父类引用只想子类对象
回复 使用道具 举报
zzzzzz赞....
回复 使用道具 举报
zzliuyang 发表于 2016-4-24 16:24
Inter是一个引用对象,即返回值的类型,显现了Inter接口,应为接口不能被实例化,就是返回的一个父类引用只想子 ...

恩恩恩 懂了 3q
回复 使用道具 举报
赞,好好学习......
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马