内部类和匿名内部类的用法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了内部类和匿名内部类的用法相关的知识,希望对你有一定的参考价值。
参考技术A Java内部类分四种,成员内部类、局部内部类、内部类和匿名内部类:1、内部类用法特点, 静态内部类定义在类中,任何方法外,用static定义,注意静态内部类中可以定义静态或者非静态的成员。
2、匿名内部类,匿名内部类是一种特殊的局部内部类,它是通过匿名类实现接口。
匿名内部类的用法特点:
1、一个类用于继承其他类或是实现接口,并不需要增加额外的方法,只是对继承方法的事先或是覆盖。
2、只是为了获得一个对象实例,不需要知道其实际类型。
3、类名没有意义,也就是不需要使用到。
内部类和匿名内部类
2017-08-07
内部类
定义:把类定义在其他类的内部,这个类就被称为内部类
内部类的访问特点:内部类可以直接访问外部类的成员,包括私有的
外部类要访问内部类的成员,必须要创建对象
内部类可以按位置分为成员内部类和局部内部类
1.成员内部类:写在类里面,方法外面,任何一种修饰符都可以修饰成员内部类,常用 private 和static ,private保护数据安全性,static使数据访问方便
测试成员内部类:方法1 外部类名.内部类名 对象名 = new 外部类名().new 内部类名();
方法2 在外部类的方法中创建内部类的对象,测试外部类的方法对内部类进行测试
注意事项:被静态修饰的成员内部类只能访问外部类的静态成员
静态成员内部类访问非静态方法的方式:外部类名.内部类名 对象名 = new 外部类名.内部类名()
访问静态方法的方式:上面所述的方法,或 外部类名.内部类名.方法名()
2.局部内部类:写在类的方法中
注意事项:测试局部内部类时,在内部类所在的方法内创建内部类的对象,再通过测试外部类方法去测试内部类
局部内部类去访问它所在的方法的局部变量时,这个变量必须被final修饰,这和他们在内存中存在的时间有关
匿名内部类
内部类的简化写法
在多态中应用,如果没有一个合适的类去继承并实现抽象类或接口中的抽象方法,这时就可以创建一个匿名内部类,去实现接口或抽象类中的抽象方法,并作为参数传递。
以上是关于内部类和匿名内部类的用法的主要内容,如果未能解决你的问题,请参考以下文章