你的括号包错了.
把class Class放在namespace proMethod 命名空间中。
调整一下打括号就可以了。
详细如下:
using System;
namespace proMethod。
class Mathod。
{
public long Factorial(long n)。
{
return n <= 0 ? 1 : n * Factorial(n - 1);。
}
public static long SFactorial(long n)。
{
return n <= 0 ? 1 : n * SFactorial(n - 1);。
}
}
class Class。
{
static void Main(string[] args)。
{
Console.WriteLine("使用静态方法\n求整数6的阶乘,结果为{0}", Mathod.SFactorial(6));。
Mathod m = new Mathod();。
Console.WriteLine("使用实例方法\n求整数6的阶乘,结果为{0}", m.Factorial(6));。
Console.ReadLine();。
}
}
}
[广告]
欢迎IT人士加入★IT从业者俱乐部★。
Q群:5874081
面向IT从业者的信息交流空间。
应该是:testing method 吧。(是 method 不是 mathod )
也可以说:
examination method。
inspection method。
classmethod 修饰符对应的函数不需要实例化,不需要 self 参数,但第一个参数需要是表示自身类的 cls 参数,可以来调用类的属性,类的方法,实例化对象等。
例:
#!/usr/bin/python。
# -*- coding: UTF-8 -*-。
class A(object):。
bar = 1
def func1(self): 。
print ('foo')
@classmethod
def func2(cls): 。
print ('func2')。
print (cls.bar)。
cls().func1() # 调用 foo 方法。
A.func2() # 不需要实例化。
输出为:
这要由这个方法决定了, 如果这个方法要求给参数, 那一定是要填的, 但若没有要你填, 你就一定不能填, 不然会报错, 但是同一个名字的方法,是可以被重载的。
如: mothod() 和 mathod(参数1,参数2) 具体这个方法是怎么样的, 去下载一个java的帮助文档, 里面有详细的关于java中提供的方法的信息。