反射与注入依赖问题

来源:互联网 发布:百度自动推送代码js 编辑:程序博客网 时间:2024/06/05 10:11

问题:

intereface接口文件并未定义成员变量,通过接口的一个方法set一个成员作为接口实现类型的内部成员变量,

调用接口实现类型的其他方法,并未能感知到该成员的存在(或者说是并未能得到正确的成员, ??也可能是因为并发多线程所致的错误??)。

interface UserAction{void setUser(User mUser);void UserSpeakName();}

public void UserActionImp implement UserAction{       User  mUser;    public void setUser(User user){         mUser=user;    }    public void UserSpeakName(){         System.out.println("username:"+mUser.Name);    }}


分析:

接口实现类型的实例是通过反射创建的,通过接口文件并没有能反应出该成员的存在,所以在并发下发生设置的内部成员发生变化,不能获取到正确的值(mUser)。


解决方法:

在调用接口时直接设置该成员:

interface UserAction{void UserSpeakName(User mUser);}

public void UserActionImp implement UserAction{           public void UserSpeakName(User mUser){         System.out.println("username:"+mUser.Name);    }}




0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 高德地图 导航信息 当前导航路径信息 实时导航信息 高德导航时Navi的信息 高德NaviInfo 安卓蓝牙发送信息 clj.fastble 先采用队列求一条最短迷宫路径长度minlen,再采用栈求所有长度为minlen的最短迷宫路径 iOS蓝牙 pycharm激活 shadowsocks下载 shadowsocks下载 开源沙龙 C++程序设计从键盘中输入两个整数,求这两个整数的最大公约数和最小公倍数。 江南大学五部曲 centos搭建ss 算法之美_源代码发布(8) understand halfaSPIclockcycleproducesaclockedge 贪心算法活动 TRIZ系列-创新原理-17 朴素贝叶斯分类 王者荣耀金币 探索性数据分析演示 治安防控 治安 TRIZ系列-创新原理-19 TRIZ系列-创新原理-20 利用图像的平移、旋转、缩放、镜像等空间几何变换实现对图像的自适应缩放、几何变换等特效 利用图像的平移、旋转、缩放、镜像等空间几何变换实现对图像的几何变换等特效 [Err]1005-Can\'tcreatetable\'item4.#sql-1238_2c\'( SAPFICO财务成本知识 财务管理分析(希金斯:第八版) 图像解压 巜人民曰报》采访张文宏,陈尔真 linux上服务器如何转发设置 图像的自适应缩放、几何变换等特效 千讯网络下载 Gsensor调试 MTKGsensor调试