方法的调用:静态:地址只分配一次。。。静态的成员是与类一起生成的,所以有静态成员的时候,非静态成员还没有生成,所以不能调用到
如果方法添加了static关键字,那么就是静态方法,否则就是非静态方法
在同一个类中方法的调用:
1.静态可以直接调用静态,当前同个类可以省略类名
2.静态不能直接调用非静态--静态先生成
3.非静态可以直接调用静态
4.如果静态需要调用非静态成员必须使用实例成员
5.非静态可以直接非静态
不同类的方法调用:
1.静态使用 类。静态成员
2.非静态成员使用类的实例对象 对象.方法()
範例:
public class Program
{
static void Main(string[] args)
{
//靜態方法
#region 调用方法
int MaxNum = GetMax(num1, num2);
Console.WriteLine("最大值是{0}", MaxNum);
#endregion
//非靜態
#region 调用非靜態方法
Program model = new Program();
model.test(num1, num2);
#endregion
}
#region **********獲取兩個數的最大值(三目运算)**********
/// <summary>
/// 獲取兩個數的最大值
/// </summary>
/// <param name="num1">第一個值</param>
/// <param name="num2">第二個值</param>
/// <returns></returns>
public static int GetMax(int num1, int num2)
{
return num1 > num2 ? num1 : num2;
}
#endregion
#region **********獲取兩個數的最大值(非靜態)**********
public void test(int num1, int num2)
{
//非靜態方法裡面調用靜態方法
int MaxNum=GetMax(num1, num2);
Console.WriteLine("最大值是{0}", MaxNum);
}
#endregion
}