静态类与非静态的区别
在非静态类中,既可以有实例成员,也可以有静态成员。
在调用实例成员的时候,需要使用对象成员.实例成员。
在调整静态成员的时候,需要使用类名.静态成员名;
使用
如果你想要你的类当做一个“工具类”去使用,这个时候可以考虑将类写成静态类
静态类在整个项目中资源共享。
using System;
using System.Reflection.Metadata.Ecma335;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
Person p = new Person();
p.M1();//对象成员调用实例成员
Person.M2();//类名调用静态成员
}
}
}
//上面主函数 下面Person类
using System;
namespace ConsoleApp1
{
public class Person
{
private static string _name;
public static string Name
{
get { return _name; }
set { _name = value; }
}
public void M1()
{
Console.WriteLine("我是非静态方法");
}
public static void M2()
{
Console.WriteLine("我是静态方法");
}
}
}
总结
静态成员必须使用类名去调用,而实例成员使用对象名调用。
静态函数中只能访问静态成员,不允许访问实例成员。
实例函数中,既可以使用静态成员,也可以使用实例成员。
静态类中只允许有静态成员,不允许出现实例成员。