zoukankan
html css js c++ java
ObjectBuilder 学习笔记
[TestMethod]
public
void
CanCreateInstances()
//
测试是否能够创建实例
{
Builder builder
=
new
Builder();
//
对象建造器
Locator locator
=
CreateLocator();
//
定位器
ConstructorPolicy policy
=
new
ConstructorPolicy();
//
建立一个构造策略
policy.AddParameter(
new
ValueParameter
<
int
>
(
12
));
//
为策略加入参数
builder.Policies.Set
<
ICreationPolicy
>
(policy,
typeof
(SimpleObject),
null
);
//
将此策略加入建造器
SimpleObject m1
=
builder.BuildUp
<
SimpleObject
>
(locator,
null
,
null
);
//
建造对象
SimpleObject m2
=
builder.BuildUp
<
SimpleObject
>
(locator,
null
,
null
);
Assert.IsNotNull(m1);
Assert.IsNotNull(m2);
Assert.AreEqual(
12
, m1.IntParam);
Assert.AreEqual(
12
, m2.IntParam);
Assert.IsTrue(m1
!=
m2);
}
[TestMethod]
public
void
CanCreateSingleton()
{
Builder builder
=
new
Builder();
Locator locator
=
CreateLocator();
ConstructorPolicy policy
=
new
ConstructorPolicy();
policy.AddParameter(
new
ValueParameter
<
int
>
(
12
));
builder.Policies.Set
<
ICreationPolicy
>
(policy,
typeof
(SimpleObject),
null
);
//
为SimpleObject添加单实例策略。
builder.Policies.Set
<
ISingletonPolicy
>
(
new
SingletonPolicy(
true
),
typeof
(SimpleObject),
null
);
SimpleObject m1
=
builder.BuildUp
<
SimpleObject
>
(locator,
null
,
null
);
SimpleObject m2
=
builder.BuildUp
<
SimpleObject
>
(locator,
null
,
null
);
Assert.AreSame(m1, m2);
}
查看全文
相关阅读:
WebStrom
设计模式之6大原则
tortoiseSVN 合并代码方法
SpannableString属性详解
TortoiseSVN设置比较工具为BeyondCompare
Android 扩大view点击范围
activity 与 fragment生命周期
记录一个 spring cloud 配置中心的坑,命令行端口参数无效,被覆盖,编码集问题无法读取文件等.
spring boot admin + spring boot actuator + erueka 微服务监控
spring boot actuator 简单使用
原文地址:https://www.cnblogs.com/tansm/p/350113.html
最新文章
python3黑帽子渗透笔记第二章--网络基础
docker笔记2--镜像容器基本使用
docker笔记1--了解docker
QT笔记--组合框
QT笔记-QlineEdit
QT笔记--checkbox
QT笔记--事件处理
c/c++进制转换练习
关于spring中的事件体系
gradle项目,连同依赖一起打jar包
热门文章
记录一下gitlab通过CAS登录慢的问题
编译安装的gitlab8.x如何修改时区设置
生产环境的gitlab大版本升级思路(从7.x升级到8.x)
获取在接口或者类上定义的泛型类型
gitlab无法push或clone的错误:JWT::DecodeError (Nil JSON web token): lib/gitlab/workhorse.rb:120:in `verify_api_request!'
使用jetty的continuations实现"服务器推"
如何分离p12(或pfx)文件中的证书和私钥
html传值及接收传值
开发注意事项
IntelliJ IDEA 13.1.3 SVN无法正常使用问题
Copyright © 2011-2022 走看看