我有一个名为clientChat
的类,它可以完成基本的网络工作。我有几个其他类链接到不同的窗体。在我的第一个表单中,我有一个引用聊天类的变量,如下所示:
clientChat cc = new clientChat();
一切正常,他们的课程已被初始化,一切都在运动中。完成第一个表单后,执行它的任务我会调出第二个表单,该表单显然与新的类文件相关联。
现在我的问题是,如何在不设置类的新实例的情况下引用clientChat
类中的内容?我需要将表单中的数据传递给networkstream
,如果我创建了一个新的类实例,那么就不需要与服务器建立新的连接,并且基本上需要重启所有内容,因为它是“新的”?我有点困惑,任何帮助都会很棒,谢谢。 .NET 4.0上的C#
答案 0 :(得分:3)
您可以在程序开头创建clientChat
的实例,然后只需将其引用传递给需要它的类。
答案 1 :(得分:3)
您可能需要查看Singleton设计模式。 Skeet先生写了一篇关于如何在C#here.中实现它的好文章(只使用版本4.它最简单,工作正常=))
答案 2 :(得分:1)
据推测,你要么:
答案 3 :(得分:0)
除了@Jens的答案之外,链接页面上有5种方法,而我认为我们使用Lazy<T>
in C# 4.0
public sealed class Singleton
{
private Singleton() { }
private static readonly Lazy<Singleton> m_instance = new Lazy<Singleton>(() => new Singleton());
public static Singleton Instance
{
get
{
return m_instance.Value;
}
}
}