首页 > 代码库 > 内部类和匿名内部类
内部类和匿名内部类
2017-08-07
内部类
定义:把类定义在其他类的内部,这个类就被称为内部类
内部类的访问特点:内部类可以直接访问外部类的成员,包括私有的
外部类要访问内部类的成员,必须要创建对象
内部类可以按位置分为成员内部类和局部内部类
1.成员内部类:写在类里面,方法外面,任何一种修饰符都可以修饰成员内部类,常用 private 和static ,private保护数据安全性,static使数据访问方便
测试成员内部类:方法1 外部类名.内部类名 对象名 = new 外部类名().new 内部类名();
方法2 在外部类的方法中创建内部类的对象,测试外部类的方法对内部类进行测试
注意事项:被静态修饰的成员内部类只能访问外部类的静态成员
静态成员内部类访问非静态方法的方式:外部类名.内部类名 对象名 = new 外部类名.内部类名()
访问静态方法的方式:上面所述的方法,或 外部类名.内部类名.方法名()
2.局部内部类:写在类的方法中
注意事项:测试局部内部类时,在内部类所在的方法内创建内部类的对象,再通过测试外部类方法去测试内部类
局部内部类去访问它所在的方法的局部变量时,这个变量必须被final修饰,这和他们在内存中存在的时间有关
匿名内部类
内部类的简化写法
在多态中应用,如果没有一个合适的类去继承并实现抽象类或接口中的抽象方法,这时就可以创建一个匿名内部类,去实现接口或抽象类中的抽象方法,并作为参数传递。
内部类和匿名内部类
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。