C#类的一些基础知识(静态方法可以不用实例化调用)

将类成员函数声明为public static无需实例化即可调用类成员函数

using System;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            int num = AddClass.Add(2, 3);  //编译通过
            Console.WriteLine(num);
        }
    }

    class AddClass
    {
        public static int Add(int x,int y)
        {
            return x + y;
        }
    }
}

反之,如果不声明为static,即使和Main方法从属于同一个类,也必须经过实例化

using System;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            int num = Add(2, 3);  //编译错误,即使改为Program.Add(2, 3);也无法通过编译
            Console.WriteLine(num);
        }

        public int Add(int x, int y)
        {
            return x + y;
        }
    }
}
using System;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            Program self = new Program();
            int num = self.Add(2, 3);  //编译通过
            Console.WriteLine(num);
        }

        public int Add(int x, int y)
        {
            return x + y;
        }
    }
}
posted @ 2018-09-04 14:23  夜月之光  阅读(1028)  评论(0编辑  收藏  举报