如果你使用Spring.net作为你的IOC容器,那么一定要注意这个问题--Spring.net 目前不支持getter、setter的访问限定符。
我们通常使用setter属性来进行依赖注入,如:
publicclassA
{
#regionB
privateBb;
publicBB
{
get{returnb;}
set{b=value;}
}
#endregion
}
publicclassB
{
}
针对上述的定义,在Spring.net中配置A类型的对象,并注入B类型对象的依赖,是可以完全正常工作的。
但是,假设,我希望A类型的B属性只能给A的派生类访问,我们通常会为B属性的getter加上Protected限定符,就像这样:
publicclassA
{
#regionB
privateBb;
publicBB
{
protectedget{returnb;}
set{b=value;}
}
#endregion
}
publicclassB
{
}
在这种定义下,如果仍然采用一样的spring配置,则会抛出"未将对象引用设置到对象实例"的异常 -- 非常常见的一个异常。
当我依照这个异常提示在数以千计的组件构成的应用程序中去查找可能的bug时,那是怎样的一种痛苦--实际上我的代码和配置都没有问题,是spring.net开了一个玩笑 -- 为了搞清楚这个玩笑,我花了将近2个小时。所以,我不希望朋友你在以后会因为同样的问题而再次浪费我们宝贵的时间。
分享到:
相关推荐
【IT十八掌徐培成】Java基础第25天-03.递归获取所有超类-内省获取所有属性-getter-setter.zip
已经拥有一年经验的你真的了解get set方法吗?也许不!以前我以为都有上架项目,这都是太基础的东西,但今天我重新回头看了以前做的笔记,真的是书读百遍,其义自见。
FastCoding是一个对Xcode所扩展的插件,主要是根据java的开发工具 eclipse 快速生成属性的getter ,setter 方法有感而发.出于兴趣开发本插件,目前主要功能是根据.h,.m文件声明的属性,自动生成get,set,lazy实例化方法
NULL 博文链接:https://lydawen.iteye.com/blog/501004
spring-service-getter-source.jar
主要介绍了Vue getter setter,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
java普通类编译成json但只是当前类的有getter、setter方法的版本
如何使用它使用 getter/setter 方法创建对象 // Create an object with getter/setter methodvar obj = { name : new getterSetter ( 'John' )} ;// Access the property in read or write modeconsole . log ( obj ...
VueSetter 通过getter和setter进行数据绑定的插件安装npm install --save vue-setter用法输入绑定<input type="text" v-setter.name="user" :value="user.getName()">将在输入时自动调用user.setName 。捆绑器...
c++的成员变量的get和set生成器,简单易用。
java 的eclipse或idea等 定义变量时 直接引入lombok.jar包 在类外部 引入@AllArgsConstructor @NoArgsConstructor @Data 简便方法引入getter/setter/tostring等方法
此扩展使您可以使用一个命令快速生成getter和setter。 它在vscode的命令面板中添加了3个命令: 插入PHP getter。 插入PHP setter。 插入PHP getter和setter。 扩展设置 此扩展程序提供以下设置: ...
eclipse 自动为getter和setter添加中文注释 详细参见 http://blog.csdn.net/kongguoan/article/details/38293137
已修改 注释添加 生成路径不存在报异常
C-Sharp-Getter-SetterNEW:您可以了解如何使用getter setter选项运行c#方法。(我们着重于Java getter setter)
StarUML扩展,用于生成getter和setter 此扩展允许为选定的属性或选定的类生成获取器和设置器。 安装 打开扩展管理器(工具>扩展管理器),然后选择注册表选项卡,然后在搜索框中输入“ getter”。 您可以找到此扩展...
OC-模型的Setter,Getter的由来,@property的由来
一个简单的 memcached 实现,支持 getter/setter 先决条件 安装 gcc! 在 MacOS 下开发并经过良好测试。 它在 Windows 上不起作用。 尚未在其他 linux 系列系统上测试。 运行服务器 确保您有 11211 端口可用于应用...
通常我们用idea默认生成的getter和setter方法是不带注释的,当然,我们同样可以设置idea像MyEclipse一样生成带有Javadoc的模板,具体设置方法,大家参考下本
财产断言者这是一个 Java JUnit 测试实用程序,可以轻松测试属性的getter/setter方法。 该实现最初由 Scott Leberknight 编写,并在讨论过 我自己 Josef Betancourt 在时再次讨论了这个问题最近原始源代码存档不可用...