内部类

作者: 地表最强程序员小白 | 来源:发表于2017-11-18 15:10 被阅读7次

    成员内部类

    //外部类
    public class outer {
        //外部类的变量,内部类可以访问
        int i=5;
        //内部类
        public  class inner{
            //方法用来访问并返回外部类变量i
            int geti(){
                return i;
            }
        }
        //外部类的方法用来创建内部类实例
        public inner getclass(){
            return new inner();
        }
        public static void main(String[] args){
            //通过先创建外部类实例来创建内部类实例,注意"."
            outer out=new innerclasstest();
            outer.inner in=out.getclass();
            System.out.println(in.geti());
        }
    }
    

    局部内部类(定义在方法内和定义在作用域内的类)

    暂无
    

    匿名内部类

    public class Outer{
        public Inner getInner(int i){
            // new Inner(){}        即返回一个Inner的子类类实例
            return new Inner(){
                int num=i+3;
                public int getNumber(){
                    return num;
                }
            };
        }
        public static void main(String[] args){
            Outer out=new Outer();
            Inner in=out.getInner(5);
            System.out.println(in.getNumber());
        }
    }
    //必须有这个接口(直接当作类???)
    interface Inner{
        int getNumber();
    }
    

    相关文章

      网友评论

          本文标题:内部类

          本文链接:https://www.haomeiwen.com/subject/htievxtx.html