匿名内部类
内部类分为成员内部类(类中方法外)和局部内部类(类中方法内),匿名内部类属于一种特殊格式的局部内部类。
-
-
存在一个类或者接口,这里的类可以是具体类也可以是抽象类
-
-
匿名内部类的格式
-
格式:new 类名 ( ) { 重写方法 } new 接口名 ( ) { 重写方法 }
-
-
new Inter(){ @Override public void method(){} }
-
-
本质:是一个继承了该类或者实现了该接口的子类匿名对象
-
-
匿名内部类的细节
-
-
-
当发现某个方法需要,接口或抽象类的子类对象,我们就可以传递一个匿名内部类过去,来简化传统的代码
-
-
/* 游泳接口 */ interface Swimming { void swim(); } public class TestSwimming { public static void main(String[] args) { goSwimming(new Swimming() { @Override public void swim() { System.out.println("铁汁, 我们去游泳吧"); } }); } /** * 使用接口的方法 */ public static void goSwimming(Swimming swimming){ /* Swimming swim = new Swimming() { @Override public void swim() { System.out.println("铁汁, 我们去游泳吧"); } } */ swimming.swim(); } }
浙公网安备 33010602011771号