匿名内部类----细节

来源:互联网 发布:经营数据分析报告 编辑:程序博客网 时间:2024/05/29 08:13
class Outer8{    class Inner extends Object    {        public void show(){}    }    void method()    {        Object obj = new Object()        {            public void show() {                System.out.println("show run");            }        };        //从new开始到上一行的右大括号 所代表的都是object的子类对象。        //因此Object obj = new Object()为父类引用指向子类对象,为多态。        obj.show();//报错:object里没有show方法。        //因为匿名内部类这个子类对象被向上转型为object类型。        //这样就不能再使用子类特有的方法了。    }}public class InnerClassDemo7 {    static class Inner7//加static 下方加不能this 因为是静态    {}    public static void main(String[] args) {        // TODO Auto-generated method stub        new Inner7();//报错:无法从静态上下文中引用非静态。    }    public void method()    {        new Inner7();    }}
原创粉丝点击