actionscript-3 - ActionScript 3 : Can someone explain to me the concept of static variables and methods?

标签 actionscript-3

我正在学习 AS3,对于静态变量或方法的作用,或者它与没有此关键字的方法或变量有何不同,我有点困惑。我认为这应该很容易回答。

最佳答案

static指定变量、常量或方法属于类而不是类的实例。 static无需创建类的实例即可访问变量、函数或常量,即 SomeClass.staticVar .它们不被任何子类继承,只有类(无接口(interface))可以具有静态成员。一个 static函数不能访问类的任何非静态成员(变量、常量或函数),您不能使用 thissuper在静态函数内部。这是一个简单的例子。

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/

相关文章:

actionscript-3 - Flex 3.2 与 Flex >= 3.5 的 HTTPService/ResultEvent

flash - 访问 AS3 中的 Document 类

flash - 本地定时器对象事件处理程序

actionscript-3 - 在 AS3 中嵌入字体 - 动态文本字段消失

actionscript-3 - 缓存具有多个参数的方法结果的最佳方法 - 对象作为字典中的键?

apache-flex - 有没有办法在 AS3 中将 DocX、OpenXml 或 RTF 转换为 TextFlow?

flash - 将 Json 对象嵌套到数组中

html - 如何让 swf 的高度随内容扩展?

apache-flex - Flex : Listening for 'Hover' over Link in text area

apache-flex - 是否有组件不再显示在屏幕上时触发的事件?