1

这是我创建的一个简单程序——一个表类,一个主类。在表类中,我创建了一个简单地输出我的名字的打印方法。从主类我调用 print 方法但没有得到输出。

namespace ConsoleApplication3
{

    class table
    {

        public static void print()
        {
            Console.WriteLine("My name is prithvi-raj chouhan");
        }
    }

    class Program
    {
        public static void Main()
        {
            table t = new table();
            t.print();  // Error the program is not giving output while calling the print method

        }
    }


}
4

5 回答 5

2

由于您调用的函数是静态的。使用此语法

public static void Main()
         { 
            table.print();     
         } 

引用 MSDN:-

即使没有创建类的实例,也可以在类上调用静态方法、字段、属性或事件。如果创建了类的任何实例,则它们不能用于访问静态成员。静态字段和事件只存在一份副本,静态方法和属性只能访问静态字段和静态事件。静态成员通常用于表示不会响应对象状态而改变的数据或计算;例如,数学库可能包含计算正弦和余弦的静态方法。

于 2012-08-14T11:40:06.130 回答
1

print是一个static方法,所以称它为静态方法:

public static void Main()
{
    table.print();
}
于 2012-08-14T11:40:09.927 回答
0

尝试这个:

class Program
    {
        public static void Main()
        {
           table.Print();

        }
    }

打印(); 是一个静态方法,所以你不需要实例化一个新的 Table 对象来访问它的方法

于 2012-08-14T11:40:41.297 回答
0

您正在调用 print() 作为实例方法,但它是静态的。尝试从方法中删除 static 关键字。

于 2012-08-14T11:41:02.373 回答
-1

尝试添加一个Console.ReadLine();after table.print();

更新:

错过了静态部分,现在更正了。

于 2012-08-14T11:40:12.797 回答