码迷,mamicode.com
首页 > 编程语言 > 详细

Java匿名内部类

时间:2018-10-30 00:19:29      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:log   nss   extend   onclick   toast   net   pre   klist   listener   

匿名内部类

匿名内部类也就是没有名字的内部类,也没有class关键字。因为没有名字,所以匿名内部类只能使用一次。匿名内部类还必须继承一个父类或实现一个接口。当然也仅能只继承一个父类或者实现一个接口。

格式

new 父类构造器(参数列表)|实现接口()  
    {  
     //匿名内部类的类体部分  
    }

示例

Button button=(Button)findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(MainActivity.this,"you clicked button",Toast.LENGTH_SHORT).show();
            }
});    

示例2

abstract class Father(){
....
}
public class Test{
   Father f1 = new Father(){ .... }  //这里就是有个匿名内部类
}

拆分上面的匿名内部类可为:

class SonOne extends Father{
  ...       //这里的代码和上面匿名内部类,大括号中的代码是一样的
}
public class Test{
   Father f1 = new SonOne() ;
}

参考

https://blog.csdn.net/guyuealian/article/details/51981163
https://www.cnblogs.com/chenssy/p/3390871.html

Java匿名内部类

标签:log   nss   extend   onclick   toast   net   pre   klist   listener   

原文地址:https://www.cnblogs.com/uestcman/p/9873996.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!