【发布时间】:2018-06-27 21:43:15
【问题描述】:
我有一个带有静态 main 方法的 C# 控制台应用程序。
我希望能够在 main 中调用非静态方法,但是 不能。
我认为我需要保持 main 静态,但我也想 在程序中运行非静态方法?
下面的语句说需要一个对象引用。
c1 = new Class1()
我在哪里/如何在这个程序中实例化非静态对象?
谢谢
namespace VER
{
class Example
{
private Dictionary<string, long> dStrLong;
Class1 c1;
static void Main(string[] args)
{
c1 = new Class1();
}
}
}
【问题讨论】:
-
我认为你把事情搞混了。我会说你先学习一个基本的 c# 教程,然后再回来。
-
c1 = new Class1();正在实例化一个对象。使用此访问您的非静态内容。 -
对象不是静态的,变量是。无论如何,也许你想做
Class1 c1 = new Class1(); -
c1itself 是非静态的,因此您无法从static方法访问它。为什么c1需要成为班级成员?为什么main()不能在内部声明一个c1变量?这里的最终目标是什么? -
您缺少 OOP 的基础知识。我建议谷歌搜索并了解静态变量和实例变量/方法之间的区别。