我的代码为什么不能通过?该怎么改?

来源:百度知道 编辑:UC知道 时间:2024/06/10 20:39:40
using System;
using System.Collections.Generic;
using System.Text;

namespace 静态混用了会有什么效果
{
class Program
{
public static void stackmethod()
{
Console.WriteLine("call static");
}
public void dynamicmethod()
{
Console.WriteLine("call dynamic");
}
static void Main(string[] args)
{

Program programinstance = new Program();
dynamicmethod();
}
}
}

MAIN方法应该改一下.
static void Main(string[] args)
{
Program programinstance = new Program();
programinstance.dynamicmethod(); //成员方法
Program.stackmethod();
}

静态方法只能由 类名.方法名 这样调用,并且静态方法中不能包含非静态的成员或变量.

而非静态方法只能由 类的实例.方法名 这样调用,非静态方法中可以包含静态的成员或变量.

使用系统常量出错

dynamicmethod不是静态方法,不能在Main中直接调用。
你可以写成:
Program programinstance = new Program();
programinstance.dynamicmethod();

Program programinstance = new Program();
programinstance.dynamicmethod();