首页 > Java > java教程 > 正文

java 匿名内部类

高洛峰
发布: 2016-12-15 13:26:20
原创
1567人浏览过

匿名类对于我现在的理解层面在于它方便灵活了对接口以及抽象类方法的实现,如果你只需要在一个地方对某个对象实现相应的用法,那么你就可以考虑使用匿名内部类啦~。光说一定会晕的那么我们用小例子说话: 

引用

下面的例子是android给按钮绑定事件的常用方法

Java代码 

public class Activity1 extends Activity {  
    OnClickListener listener1 = null;  
    Button button1;  
    /** Called when the activity is first created. */  
    @Override  
    public void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.activity1);  
        listener1 = new OnClickListener() {//OnClickListener是一个接口  
            public void onClick(View v) {//onClick()方法是这个借口唯一的方法  
                Bundle bundle = new Bundle();  
                bundle.putString("store", "数据来自Activity1");  
                Intent mIntent = new Intent();  
                mIntent.putExtras(bundle);  
                setResult(RESULT_OK, mIntent);  
                finish();  
            }  
        };  
        button1 = (Button) findViewById(R.id.button3);  
        button1.setOnClickListener(listener1);  
                ... ... ...(还有代码在下面~)
登录后复制

这个就用到了内部类,原因在于当这个按钮按下时只会触动专属于它的一个事件,不会再有其他事件了,所以使用内部类就可以把实现和执行动作一并搞定!有点像javascript的匿名函数哦~ 
在给几个小例子: 

立即学习Java免费学习笔记(深入)”;

网龙b2b仿阿里巴巴电子商务平台
网龙b2b仿阿里巴巴电子商务平台

本系统经过多次升级改造,系统内核经过多次优化组合,已经具备相对比较方便快捷的个性化定制的特性,用户部署完毕以后,按照自己的运营要求,可实现快速定制会费管理,支持在线缴费和退费功能财富中心,管理会员的诚信度数据单客户多用户登录管理全部信息支持审批和排名不同的会员级别有不同的信息发布权限企业站单独生成,企业自主决定更新企业站信息留言、询价、报价统一管理,分系统查看分类信息参数化管理,支持多样分类信息,

网龙b2b仿阿里巴巴电子商务平台 0
查看详情 网龙b2b仿阿里巴巴电子商务平台

Java代码 

package com.eoeAndroid.activity;  
  
  
interface OnClickListener{  
    void onClick(String s);  
}  
  
  
public class testListener {  
      
    public static void main(String... strings){  
        OnClickListener listener = new OnClickListener(){  
  
            @Override  
            public void onClick(String s) {  
                // TODO Auto-generated method stub  
                System.out.println(s);  
            }  
              
        };  
        listener.onClick("OK!");  
    }  
  
}
登录后复制

这个代码相当于将OnClickListener接口实现后引用,就好比如下代码: 

Java代码 

package com.eoeAndroid.activity;  
  
  
interface OnClickListener{  
    void onClick(String s);  
}  
  
class MyListener implements OnClickListener{  
  
    @Override  
    public void onClick(String s) {  
        // TODO Auto-generated method stub  
        System.out.println(s);  
    }  
      
}  
public class testListener {  
      
    public static void main(String... strings){  
        MyListener listener = new MyListener();  
        listener.onClick("OK!");  
    }  
  
}
登录后复制

更多java 匿名内部类相关文章请关注PHP中文网!

java速学教程(入门到精通)
java速学教程(入门到精通)

java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号