using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _Test
{
class Program
{
static void Main(string[] args)
{
//调用实例成员
Person p = new Person();
p.M1();//实例方法,调用的时候必须创建实例对象。
Person.M2();//静态方法,只能通过类名直接调用。
Student.M3();//静态类中的静态方法只能通过类名调用。
Console.WriteLine();
Console.ReadKey();
}
}
public static class Student //静态类
{
private static string _name;
public static string Name
{
get { return Student._name; }
set { Student._name = value; }
}
public static void M3()
{
Console.WriteLine("Hello World");
}
}
public class Person //非静态类
{
private static string _name;
public static string Name
{
get { return Person._name; }
set { Person._name = value; }
}
private char _gender;
public char Gender
{
get { return _gender; }
set { _gender = value; }
}
public void M1() //非静态类
{
Console.WriteLine("我是非静态的方法");
}
public static void M2() //静态类
{
Console.WriteLine("我是一个静态方法");
}
}
}
语法规则:
1静态类与非静态类基本相同,但存在一个区别:静态类不能实例化。也就是说,不能使用 new 关键字创建静态类类型的变量。因为没有实例变量,所以要使用类名本身访问静态类的成员。
2静态类的特性:
仅包含静态成员。
无法实例化。
是密封的。
不能包含实例构造函数。
原文:http://www.cnblogs.com/hao-1234-1234/p/6107909.html