Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
小型AS2 OOP问题_Oop_Actionscript_Actionscript 2 - Fatal编程技术网

小型AS2 OOP问题

小型AS2 OOP问题,oop,actionscript,actionscript-2,Oop,Actionscript,Actionscript 2,我正在使用ActionScript2(还没有准备好升级,尽管这与问题无关),但是我在OOP和类方面遇到了问题 我有一个“工具”类,是这样写的: class com.Tool { public var self:MovieClip; private static var Type:String; function Tool(T:String, X:Number, Y:Number) { Type = T; self = _root.createEmptyMovieC

我正在使用ActionScript2(还没有准备好升级,尽管这与问题无关),但是我在OOP和类方面遇到了问题

我有一个“工具”类,是这样写的:

class com.Tool {
  public var self:MovieClip;
  private static var Type:String;

  function Tool(T:String, X:Number, Y:Number) {
    Type = T;

    self = _root.createEmptyMovieClip("obj"+_root.getNextHighestDepth(), _root.getNextHighestDepth());
    self._x = X;
    self._y = Y;
    self.width = 36;
    self.height = 36;

    self.onRollOver =  function() {
        trace(Type);
    }
  } 
}
我在主脚本中创建了其中3个,如下所示:

var toolPan:Tool = new Tool("pan", 0, 0);
var toolSquare:Tool = new Tool("square", 0, 38);
var toolLine:Tool = new Tool("line", 0, 76);
除了onRollOver之外,这一切都很好。它应该输出唯一的“Type”字符串,但不管我滚动哪个字符串,它总是输出“line”(最后创建的类型工具)

不用说,我对这一切还是个新手。但它们似乎共享同一个变量:/I如何使这些变量对创建的每个对象都是唯一的


多谢各位

这是因为它是static类型,所以该值由该类的所有实例共享。移除它,它应该会工作

private var Type:String;

你是个救生员!!