JavaSE 学习参考:匿名内部类和匿名对象

006zipb5zy79Gvt6jwyee&690
 

匿名内部类

匿名内部类也就是没有名字的内部类。这种类的定义之所有没有名称,因为其仅用在使用之处,其他地方也无需要使用。通常和new运算符同时定义类和创建对象。匿名类必须显示地指明其要继承和父类或接口。由匿名类创建的对象就具有继承的父类或实现的接口的特性。

匿名对象

匿名对象也就是没有对象名的对象,我们定义对象时通常给对象定义一个名称称为对象名或对象的引用或对象变量,以便程序调用时根据对象名称类访问。但匿名对象没有名称,只有用于只使用一次地方,通常作用方法的实参使用和调用其方法返回的结果。

 

 

interface Coolable{

    public void close();

}

 

class Tv{

 

//关闭电视机

public void closeTV(Coolable c){

c.close();

}

 

}

 

public class Demo1 {

public static void main(String[] args) {

      Tv tv1=new Tv();

      //定义匿名类并创建实例c

      Coolable c=new Coolable(){

@Override

public void close() {

System.out.println("使用红外遥控关闭。");

}

       

      };

      tv1.closeTV(c);

      

      Tv tv2=new Tv();

      //定义匿名类并创建匿名实例作为实参传递。

      tv2.closeTV(new Coolable(){

   @Override

   public void close() {

   System.out.println("使用蓝牙遥控关闭。");

   }

        });

      

}

}

运行程序,结果如下图所示:

006zipb5zy79GvseEaf8b&690
 

 

 

转载于:https://my.oschina.net/u/2971691/blog/864260

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值