bar*_*ron 4 c# class-design class visual-studio-2008
说我有两个单独的类,A和B.
我还有Repository类C,它从文本文件中加载一些信息.例如,它有一些方法loadLines(),addLine(),deleteLine().
忽略数据绑定,如何使A和B都在同一个C类上工作.是否可能?
例如,目前,在A类和B类表格中,我有:
var classC = new C();
Run Code Online (Sandbox Code Playgroud)
这导致重复执行.如果我可以从A或B中使用一个c类副本,那会好得多.
编辑:所以使用单例,C类的构造函数何时执行? - 无论哪个班级首先创造它?它只发生在我接受它的时候?
edit1:使用单例模式意味着你应该只在项目解决方案中有一个吗?我可以有多个吗?
您可以使用Singleton模式,或者如果您想要使用依赖注入框架的路径(这不仅仅是创建单例,而且非常值得研究),大多数DI容器只能创建一个对象的单个实例.
class C {
public static readonly C Instance = new C();
private C() {
}
}
Run Code Online (Sandbox Code Playgroud)
那你就像使用它一样:
private void A_Load(object sender, EventArgs e) {
var classC = C.Instance;
}
private void B_Load(object sender, EventArgs e) {
var classC = C.Instance;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
158 次 |
| 最近记录: |