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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

Java中让我最头痛的就是内部类和匿名内部类,有哪位大神可以给详细说说,妹子在这谢过了:loveliness:

8 个回复

倒序浏览
本帖最后由 doomsday 于 2015-4-16 19:24 编辑

别拿妹子诱惑大伙,你就是王雪,对你就是。。。别以为我不认识你了
内部类:事物中还有内部事物
匿名内部类:内部事物中的匿名事物(其实我也有点模糊)
回复 使用道具 举报
匿名内部类是多态,一般是new 父类接口名(){},代表了实现这个接口的一个匿名子类对象
大括号内重写父类接口里的方法
直接接.方法名调用一次方法或者把整体作为参数传递
是一种简化代码的手段
回复 使用道具 举报
看刘意视频,清晰而透彻
回复 使用道具 举报
doomsday 发表于 2015-4-16 19:12
别拿妹子诱惑大伙,你就是王雪,对你就是。。。别以为我不认识你了
内部类:事物中还有内部事物
匿名内部类 ...

你是谁啊:@
回复 使用道具 举报
showdy 发表于 2015-4-16 20:03
看刘意视频,清晰而透彻

谢谢:handshake谢谢:handshake
回复 使用道具 举报
匿名内部类就是没有名字的内部类
回复 使用道具 举报
我的想法是别用正常思想去理解匿名内部类,把格式记住就可以了,用的时候直接套格式。
回复 使用道具 举报
内部类就是在一个类中再声明一个类;匿名类是在一个类的子类的类体创建一个子类对象。而匿名类要想使用必然是在某个类中直接使用匿名类创建对象的,所以匿名类也一定是内部类。这样说不太清楚,给你用代码举个例子吧:
class A
{
   int a;
   class B
    {
      int b;
    }
}其中B就是A的内部类。
class A
{
   int a;
   void s(C c){}
}
class B
{
   A aa=new  A();
    aa.s(new C()
              {
                匿名类的类体     //这段代码就是C的一个子类(匿名类)创建的对象
              });
}s括号中的参数就是一个匿名类的对象
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马