码迷,mamicode.com
首页 > 编程语言 > 详细

ThinkingInJava第十章内部类

时间:2018-08-19 17:09:45      阅读:177      评论:0      收藏:0      [点我收藏+]

标签:void   int   rgs   元素   不用   外部类   thinking   val   初始化   

1内部类享有外部类的元素的访问权,就像外部类的方法一样,可以访问。

2 DotThis.this内部类中外部类的引用

3 创建内部类:DotNew dn=new DotNew();DotNew.Inner in=dn.new Inner();

4 内部类实现某个接口时,内部类 extends implement ,完全隐藏了实现细节。

5 在方法中或者域中的内部类,在方法执行前就编译了,所以不是说方法技术,这个类会消失掉。

5 匿名内部类:我们不用显式的创建一个具有名字的继承自某个类的导出类:初始化基类有参构造器

class Wrapping{
    private int i;
    public Wrapping(int x){
        i=x;
    }
    public int value(){
        return i;
    }
}
public class Parcel {
    public Wrapping wrapping(int x){
        return new Wrapping(x){
            public int value(){
                return super.value()*47;
            }
        };
    }
    public static void main(String [] args){
        Parcel p=new Parcel();
        Wrapping w=p.wrapping(10);
    }
}    

给匿名类传递参数

public class Par {
    public Destination destination(final String dest){
        return new Destination(){
            private String label=dest;
            public String readLable(){
                return label;
            }
        };
    }
}

闭包和回调:用内部类实现?

ThinkingInJava第十章内部类

标签:void   int   rgs   元素   不用   外部类   thinking   val   初始化   

原文地址:https://www.cnblogs.com/dajingyu/p/9501604.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!