zoukankan
html css js c++ java
蛙蛙请教:如何利用委托实现多个方法同时调用.
using
System;
namespace
ConsoleApplication1
{
public
delegate
void
AddContainer();
public
class
Class1
{
public
static
AddContainer AddCont
=
null
;
private
Class1()
{
}
public
static
void
AddAllContainer()
{
Class1.AddCont();
}
}
public
class
Class2
{
public
Class2()
{
Class1.AddCont
+=
new
AddContainer(
this
.Method1);
Class1.AddCont
+=
new
AddContainer(
this
.Method2);
}
private
void
Method1()
{
Console.WriteLine(
"
111
"
);
}
private
void
Method2()
{
Console.WriteLine(
"
222
"
);
}
}
public
class
Class3
{
public
static
void
Main(
string
[] args)
{
//
大家看下一句哦,我想把下一句去掉也能在调用Class1.AddAllContainer()的时候
//
同时也调用Class的两个私有方法,怎么改一下这个代码呀?是这样的,Class1相当于
//
系统底层架构,而Class2相当于业务逻辑,Class3呢就是表示层,表示层Class3在使用
//
Class2的业务逻辑的时候需要先用Class1加载元数据以创建一组业务逻辑使用的容器
//
为了达到三层之间的低耦合效果,我不想在改动业务逻辑代码的时候同时还要改动底层
//
架构和表示层调用的代码,我在Class2的构造函数里给Class1的委托增加了两个回调
//
函数,可是表示层Class3不实例化它的话,它就永远不执行,如果业务层没增加一个action
//
都要改动一下Class3的Main方法的话会很麻烦,大家给看看怎么改能实现我的效果.
Class2 c
=
new
Class2();
Class1.AddAllContainer();
Console.ReadLine();
}
}
}
查看全文
相关阅读:
水晶报表开发
ASP.NET页面刷新方法总结
DataList获取当前ID
flexviewer让指定slid值对于的图层可见
WKT
消息的分类
MFC画图
MFC画文字DrawText,GetTextExtent,GetTextMetrics
djvu是什么
代码提示插件 Visual Assistxv
原文地址:https://www.cnblogs.com/onlytiancai/p/214083.html
最新文章
史上最简单的Hibernate入门简介
myeclipse开发hibernate应用程序示例
UML利器Rational Rose Enterprise Edition 2003 安装破解步骤
研读代码必须掌握的五个Eclipse快捷键
MyEclipse 快捷键
DOMINO外网邮件发不出解决办法
SSO单点登陆方案
WebSphere portal与Domino单点登录配置
终于冷了
老狼 想把我唱给你听
热门文章
《北京乐与路》
花钱的感觉真爽
Merry Christmas
Sql 时间Function
C# 集合类
SQL触发器实例1
ASP.NET 项目收集详细错误信息的一种方法
条形码生成
C# 泛型(二)
SQL Server 2005 自动备份
Copyright © 2011-2022 走看看