C# 如何避免重新初始化从未更改的类?
我有一个类,在我的代码中只需要初始化一次,但是它所在的函数被多次调用,并且该类被一次又一次地初始化。这个类只需要调用一次,因为传递给它的数据永远不会更改,让我的代码多次重新初始化它是一种浪费。我想让我的代码有一种方法来检查这个类是否已经初始化,并且可以获取已经生成的所需信息。我的第一个想法是以单例模式的方式进行设计,但我认为这并不是必需的,因为在我的代码中其他任何地方都不需要这个类。这样做的简单方法是什么?将其设置为静态。类将在首次使用时初始化…A是一种方法C# 如何避免重新初始化从未更改的类?,c#,get,initialization,C#,Get,Initialization,我有一个类,在我的代码中只需要初始化一次,但是它所在的函数被多次调用,并且该类被一次又一次地初始化。这个类只需要调用一次,因为传递给它的数据永远不会更改,让我的代码多次重新初始化它是一种浪费。我想让我的代码有一种方法来检查这个类是否已经初始化,并且可以获取已经生成的所需信息。我的第一个想法是以单例模式的方式进行设计,但我认为这并不是必需的,因为在我的代码中其他任何地方都不需要这个类。这样做的简单方法是什么?将其设置为静态。类将在首次使用时初始化…A是一种方法 public static clas
public static class MyClass
{
public static bool IsInited { get; private set; }
public static void Init(...)
{
...
IsInited = true;
}
}
如果Init
没有参数,例如可以设置所有属性本身,则可以使用a而不是Init
。基本上,当其他代码第一次访问属性时,将调用构造函数
public static class MyClass
{
public static bool IsUnix { get; private set; }
static MyClass()
{
IsUnix = Environment.NewLine == '\n';
}
静态类怎么样?如果我将类设置为静态,那么我是否也必须将其中的函数和变量设置为静态?当然是user3344076。那里的一切都必须是静态的。谢谢你的帮助。我还是个新手,所以谢谢你和我在一起。