匿名内部类

匿名内部类:就是没有类名字的内部类。
匿名内部类作用:简化内部类书写。
匿名内部类的前提:必须继承一个父类或者是实现一个接口。
匿名内部类的格式:
new 父类或者接口(){ 执行代码….};

内部类的写法:
class Outer{
    class Inner
    {
        public void show(){
            System.out.println("内部类的show方法");
        }
    }
    public void print(){
        new Inner().show();
    }
}

匿名内部类调用show方法:


abstract class inner3{
    abstract void show();   
}

class Outer3{

    public void print(){
        new inner3(){

            @Override
            void show() {
                System.out.println("内部类的show方法");
            }
        }.show();
    }   
}

在外部类调用show1、show2方法。内部类的实现方法

public class annoyedClass4{

    public static void main(String[] args) {
        new Outer4().print();
    }
}

class Outer4{

    class Inner4{

        public void show1(){
            System.out.println("show1");
        }

        public void show2(){
            System.out.println("show2");
        }
    }

    public void print(){
        Inner4 inner4 = new Inner4();
        inner4.show1();
        inner4.show2();
    }
}



使用匿名内部类实现:


public class annoyedClass5{
    public static void main(String[] args) {
        new Outer5().print();
    }
}

interface Inner5{
    void show1();
    void show2();
}

class Outer5{

    Inner5 inner5=new Inner5(){

        public void show1(){
            System.out.println("show1");
        }

        public void show2(){
            System.out.println("show2");
        }
    };

    public void print(){
        inner5.show1();
        inner5.show2();
    }
}

**注意细节:
1.使用匿名内部类时,如果需要调用匿名内部类的两个方法或者两个方法以上。可以使用变量指向该对象。**

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值