我正在学习 AS3,对于静态变量或方法的作用,或者它与没有此关键字的方法或变量有何不同,我有点困惑。我认为这应该很容易回答。
最佳答案
static
指定变量、常量或方法属于类而不是类的实例。 static
无需创建类的实例即可访问变量、函数或常量,即 SomeClass.staticVar
.它们不被任何子类继承,只有类(无接口(interface))可以具有静态成员。一个 static
函数不能访问类的任何非静态成员(变量、常量或函数),您不能使用 this
或 super
在静态函数内部。这是一个简单的例子。
public class SomeClass
{
private var s:String;
public static constant i:Number;
public static var j:Number = 10;
public static function getJ():Number
{
return SomeClass.j;
}
public static function getSomeString():String
{
return "someString";
}
}
在 TestStatic 中,无需创建 SomeClass 实例即可访问静态变量和函数。
public class TestStaic
{
public function TestStaic():void
{
trace(SomeClass.j); // prints 10
trace(SomeClass.getSomeString()); //prints "someString"
SomeClass.j++;
trace(SomeClass.j); //prints 11
}
}
关于actionscript-3 - ActionScript 3 : Can someone explain to me the concept of static variables and methods?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1738349/