我看过一些 C# 项目来了解 C# 编码。所以,我发现从属于同一个类的函数创建类的对象。请解释一下原因以及它到底会做什么。 以下是示例代码。
class MainClass
{
void TestChild()
{
//some code
}
void TestMethod()
{
MainClass object1 = new MainClass();
object1.TestChild();
}
}
从 TestMethod 直接调用 TestChild 有什么区别吗?
对我来说,这段代码和你的没有太大区别:
class MainClass
{
void TestChild()
{
//some code
}
void TestMethod()
{
TestChild();
}
}
除非程序员想在构造函数中设置一些东西。
我不知道为什么在评论部分有人说你的代码无法编译。它编译得很好。 (去年我也这样做过,甚至没有注意到我做了什么)。
我认为,在 TestMethod 中向自身声明一个新对象的原因是为了确保 TestMethod 在构造函数重载的情况下使用正确的对象来执行 TestChild 方法。
虽然您的代码无法编译,因为构造函数必须像类型一样命名,但它看起来像单例实现
using System;
public class Singleton
{
private static Singleton instance;
private Singleton() {}
public static Singleton Instance
{
get
{
if (instance == null)
{
instance = new Singleton();
}
return instance;
}
}
}
或另一种形式的工厂方法
如果您的 TestCase26827 类中有 TestChild 方法,那么该方法将被调用,但不会调用 MainClass 的方法