(软件构造05)匿名类总结

最早在软件构造实验三中的GUI实现中用到了匿名类,当时学习java Swing的时候,就是单纯的将示例代码直接套用,而自己并不清楚匿名类的使用规则和使用场合,后来在第七章线程的部分在生成新的线程对象的时候有一种方法就是使用匿名类的方法,所以本文对匿名类做一些简单的总结。
Java 中可以实现一个类中包含另外一个类,且不需要提供任何的类名直接实例化。**主要是用于在我们需要的时候创建一个对象来执行特定的任务,可以使代码更加简洁。**匿名类是不能有名字的类,它们不能被引用,只能在创建时用 new 语句来声明它们。
匿名类语法格式:
在这里插入图片描述
注:
1.上面格式中的“父类”是子类需要继承或者实现外部的类或者接口
2.匿名类可以继承父类的方法,也可以重写父类的方法。
3.匿名类可以访问外部类的成员变量和方法,匿名类的类体不可以声明称static成员变量和static方法。
4.匿名类由于是一个new的结果,所以其实可以赋值给一个父类对象。因此可以分为两种匿名类,成员匿名类和局部匿名。
下面举例实验三中GUI实现匿名类的地方:

button6.addActionListener(new ActionListener() {
   @Override
   public void actionPerformed(ActionEvent e) {
    button4.setEnabled(true);
    text2.setEditable(true);
    textTitle.setText("请输入您要删除的位置名称:");
   }
  });

其中new ActionListener()就是声明了一个匿名类,为了代码的简洁,我们不需要再额外花费一个java文件的代价来新生成一个类,而且这样一个匿名类只需要使用一次,使用范围就是当我们再swing里点击button6的时候,其他情况下我们不会使用到,所以这里运用匿名类是非常恰当的。
同样再第七章线程的创建中也运用到了匿名类:
在这里插入图片描述
老师同样推荐了匿名类的用法,也是出于简便性,并且Runnable()接口中的方法很少,写匿名类的时候非常方便,如果Runnable()接口中的方法很多的时候,我们就要考虑去权衡到底是生成一个子类更加便捷还是匿名类更好。
这就是笔者对匿名类的总结。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值