前篇链接:Unity之C#学习笔记(10):接口和多态 Interfaces and Polymorphism
静态类型(Static)用一句话概括就是:在程序运行期间只会被创建一份的通用内容,用关键字static修饰,主要包括静态类、静态变量和静态方法。我们这里主要讨论静态变量和静态方法。这一篇博文给出了比较详细的介绍,可以作为补充:C# 之 static的用法详解。
静态变量和方法是类中的成员。与一般的成员变量和方法不同的是,无论我们创建多少个类的对象,静态成员都只会存在一个。换一种说法,静态成员不依赖于类的具体对象。从内存分配角度来说,静态成员的存储位置和非静态成员不同,当创建新对象时,会在堆中为非静态成员新分配空间。而静态成员从最初就存储在其他位置,只会有一个存储空间。
静态成员有一个特性:可以通过类名.变量名(方法名)直接访问。这个特性对于我们在Unity中编程是非常便利的。对于非静态成员,我们要先通过GetComponent获得类的实例,再访问或调用对应的变量或方法,而静态成员则通过类名即可调用。
对于静态方法,因为它不属于任何类的示例,所以不能调用任何非静态的成员。
静态成员可以通过静态构造函数来初始化,我们通过一个Employee雇员类的例子来说明。
public class Employee
{
public int employeeID;
public string firstName, lastName;
public int salary;
public static string companyName;
public Employee()
{
Debug.Log("Constructor called");
employeeID = 0;
lastName = "张";
firstName = "三";
salary = 8000;
}
static Employee

最低0.47元/天 解锁文章
1238

被折叠的 条评论
为什么被折叠?



