所以,我假设你用的是CS4,对吗?CS4编译器中存在一个不允许您执行此操作的错误。。。假设您将任何内容声明为局部变量。您可以将testVar设置为类实例变量,这样就可以了。
如果您想在包之外添加一个类,那么您可以这样做,并且仍然使用局部变量。但是,添加第二个将使编译器阻塞。
顺便说一句,这在CS3中确实有效,但在将其用于帮助器类(包中的主类将使用的类)时,通常认为这是一个坏主意。我唯一使用它的时间是用于声明一个类,该类将用作singleton构造函数的参数,例如:
package {
public class MySingletonClass extends Object {
private static var _instance:MySingletonClass ;
public function MySingletonClass ($singletonEnforcer:SingletonEnforcer) {}
public static function getInstance(): MySingletonClass{
if (MySingletonClass._instance == null) {
MySingletonClass._instance = new MySingletonClass(new SingletonEnforcer());
}
return MySingletonClass._instance;
}
public static function get instance(): MySingletonClass{
return MySingletonClass.getInstance();
}
}
}
class SingletonEnforcer extends Object {
public function SingletonEnforcer() {}
}