A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张东贤 中级黑马   /  2013-3-21 00:54  /  4159 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 张东贤 于 2013-3-21 01:34 编辑

Anonymous Inner
Class(匿名内部类)是否可以
extends(继承)其他类,是否
可以implement(实
现)interface(接口)?


谢谢谢谢

评分

参与人数 1技术分 +1 收起 理由
贾文泽 + 1

查看全部评分

3 个回复

倒序浏览
匿名内部类不能有构造方法。  
匿名内部类不能定义任何静态成员、方法和类。  
匿名内部类不能是public,protected,private,static。  
只能创建匿名内部类的一个实例。
一个匿名内部类一定是在new的后面,用其隐含实现一个接口或实现一个类。  
因匿名内部类为局部内部类,所以局部内部类的所有限制都对其生效。
内部类只能访问外部类的静态变量或静态方法。
  1. public static void main(String[] args) {

  2.     theApp = new Analyzer();  // 创建一个对象
  3.      SwingUtilities.invokeLater(new Runnable() { // Anonymous Runnable class  

  4.       // 一个匿名内部类,他实现了一个线程
  5.        // 原本这个方法是传一个Runnable类型变参数
  6.        // 这里可以通过这种匿名类的方式来实现

  7.        // object
  8.       public void run() {
  9.       theApp.creatGUI();
  10. }
  11. });
  12. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
贾文泽 + 1

查看全部评分

回复 使用道具 举报
匿名内部类,只有借助一个类或都一个接口才得以实现,好象不能多实现。
其实匿名内部类是一个匿名子类对象。
回复 使用道具 举报
这几天问匿名内部类的真多...我决定把自己的总结再粘贴复制一次,希望对卤煮有帮助..
1,匿名内部类其实就是内部类的简写格式。
2,定义匿名内部类的前提:
内部类必须是继承一个类或者实现接口。
3,匿名内部类的格式:  new 父类或者接口(){定义子类的内容}
    例如:
abstract class Abs
{
   abstract void method();
}
class Outer
{
   Abs a=new Abs()
   {
     public void method(){}
   };//这就是匿名内部类,注意分号结尾.
}   
4,其实匿名内部类就是一个匿名子类对象。而且这个对象有点胖。可以理解为带内容的对象。
5,匿名内部类中定义的方法最好不要超过3个。

评分

参与人数 1技术分 +1 收起 理由
贾文泽 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马