匿名内部类,就是内部类的简写格式。

必须有前提:
内部类必须继承或者实现一个外部类或者接口
匿名内部类:其实就是一个匿名子类对象
格式:new  父类or接口(){   子类内容,如实现重新父类的方法}.实现重新父类的方法名   见下图

---------------------------------

package Polymorphic;


public class day_4_7 {

public static void main(String[] args) {
Fu fu = new Fu();
fu.test2();

}

}
class Fu{
int i =3;
public void test2(){
//匿名内部类
new test(){
//重写父类的test1方法
void test1(){
System.out.println("测试匿名内部类");
}
void hah(){

}//此处再调用重写或者实现的方法 test1
}.test1();;
//匿名内部类结束

}

}
abstract class test{
abstract void test1();
}

---------------------
匿名内部类多个方法调用

package Polymorphic;


public class day_4_7 {

public static void main(String[] args) {
new Fu().test2();

}

}
class Fu{
int i =3;
public void test2(){
//匿名内部类多个方法的调用
test s = new test(){

void test1(){
System.out.println("测试匿名内部类test1");
}
void test2(){
System.out.println("测试匿名内部类test2");
}

};
s.test1();
s.test2();
//匿名内部类结束

}

}
abstract class test{
abstract void test1();
abstract void test2();
}

猜你喜欢

转载自www.cnblogs.com/liyunchuan/p/10666072.html
今日推荐