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();
}
}
}
查看全文
相关阅读:
文件系统类型
Linux VFS分析(二)
VFS(Virtual File System)
shell语言
linux VFS 之一 :虚拟文件系统的面向对象设计思想
分层利器 facade
微内核与面向组件
从操作系统内核看设计模式--linux内核的facade模式
软件架构模式
联系的度量
原文地址:https://www.cnblogs.com/onlytiancai/p/214083.html
最新文章
两个实验操作系统-ubuntu在安装配置pintos
spring4.1+springmvc4.1+mybatis3.2.8+spring-security3.2.5集成环境建设
设计模式——生成器
hdu4336压缩率大方的状态DP
Matlab hermite
几张图片来了解列存储
poj1655 Balancing Act 找树的重心
cocos2d-x截图功能clippingnode它也可用于——白费
intellij idea该插件开发摘要
Android 大约Dialog弹出窗口
热门文章
BIEE11g BI_server Jvm參数调整
cocos2d-x 3.1.1 学习笔记[2]Sprite 精灵
SDL2源码分析5:更新纹理(SDL_UpdateTexture())
Linux 安装之U盘引导
Android点滴---ViewHolder通用,优雅写法
Linux内核——定时器和时间管理
设计模式初探3——装饰者模式(Decorator Pattern)
linux 除了某个文件或某个目录以外所有删除
Linux内核的同步机制---自旋锁
VFS,super_block,inode,dentry—结构体图解
Copyright © 2011-2022 走看看