黑马程序员_关于静态
1.使用了static修饰符的方法为静态方法,反之则是非静态方法;
2.静态方法是一种特殊的成员方法,它不属于类的某一个具体的实例;
3.非静态可以访问类中的任何成员,而静态方法只能访问类中的静态成员。
1.静态方法修饰的对象是全局变量,谁都可以调用,而实例方法创造的对象属于实例方法
2.static修饰的就是静态的,不需要实例化对象,而new出来的就是实例的,需要实例化对象
1.静态方法不对特定实例进行操作,在静态方法中引用 this 是编译时错误。
2.实例方法对类的某个给定的实例进行操作,而且可以用 this来访问该实例。
namespace _7.静态方法 { class Program { /// <summary> /// 一个类中,static方法能用static对象,不能直接调非static的对象。 /// 被static修饰的不需要实例化.就是不能被new的类就是静态类。 /// </summary> /// <param name="args"></param> static void Main(string[] args) { Person Age = new Person(); Person.TotalCount = 10; Console.WriteLine(Person.TotalCount); DoIt(); Console.ReadKey(); } public static void DoIt() { Console.WriteLine("使用全局变量,{0}", Person.TotalCount);//用了全局变量 } } public class Person { public static int TotalCount;//加了static后,是全局变量,都能被访问。 public int Age; } public class Dog { public void jiaohuan() { Console.WriteLine("旺旺,{0}",Person.TotalCount);//没有被static修饰,但也可以使用全局变量 } } }
静态类是不能实例化的,我们直接使用它的属性与方法,静态类最大的特点就是共享。
静态类中的所有成员必须是静态的。
静态类可以有静态构造函数,静态构造函数不可继承。
静态构造函数可以用于静态类,也可用于非静态类。
静态构造函数无访问修饰符、无参数,只有一个 static 标志。
静态构造函数不可被直接调用,当创建类实例或引用任何静态成员之前,静态构造函数被自动执行,并且只执行一次。
非静态类需要你自己去实例化加载它,才能调用
浙公网安备 33010602011771号