回 帖 发 新 帖 刷新版面

主题:[讨论]难以理解

class Test                          
{
    public void main()
    {
        Console.WriteLine("the max of 6 and 8 is:{0}",max(6,8));
    }
    public int max(int x,int y)
    {
        if (x>y)
            return x;
        else
            return y;
    }
}
为什么这个不能运行啊,非要把两个public 都改成 static才行呢,不太明白

回复列表 (共4个回复)

沙发


沙发,请各位高手帮忙,我知道有别的方法可以实现这段程序,我只是不明白为什么不能用PUBLIC呢

板凳

可能main函数只能是静态的?
所以main函数中调用类的函数就只能是静态的。
如果不弄成静态的,就要生成类的一个实例,然后才能调用它的非静态方法

3 楼

public是权限访问修饰符,而static是静态修饰符
不属于同一级别
不用public则默认是private

入口函数必须是静态的

4 楼

哦,谢谢了

我来回复

您尚未登录,请登录后再回复。点此登录或注册