C#オブジェクト内のクラスに対する静的メンバーと非静的メンバーの違い


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace  
{
        public  class person
         {
       
            public void M1()
            {
                Console.WriteLine(" ");
            }
            public static void M2()
            {
                Console.WriteLine(" ");
            }
        }
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace  
{
    class Program
    {    
        static void Main(string[] args)
        {
            person p = new person();
            p.M1();// 
            person.M2();// 
            Console.ReadLine();
        }
    }
}

静的と非静的の違い:
1)非静的では、インスタンスメンバーであっても静的メンバーであってもよい.
2)インスタンスメンバーを呼び出す際には、オブジェクト名を使用する必要がある.インスタンスメンバー
静的メンバーを呼び出す場合は、クラス名を使用する必要があります.静的メンバー名
まとめ:
1)静的メンバーはクラス名で呼び出され、インスタンスメンバーはオブジェクト名で呼び出されます.
2)インスタンス関数では、静的メンバーもインスタンスメンバーも使用できます.
3)静的関数では、静的メンバーのみにアクセスでき、インスタンスメンバーへのアクセスは許可されません.
次の操作を行います.
1)クラスを「ツールクラス」として使用したい場合は、クラスを静的に書くことを考えることができます.
2)静的クラスはプロジェクト全体でリソース共有