如果不知道你的类文件是什么样子或者你把那行声明和赋值给 t 的确切位置,我不能肯定地说。
ta 是 A3 类的属性吗?
这意味着您在该类的属性声明中拥有它:
public var t:String = "test";
如果不是,则您正在处理范围问题,因为 t 在您声明它的位置之外没有范围。
例如,如果您的构造函数中有这一行:
var t:String = "test";
它的范围仅限于您的构造函数。
你需要做的是让你的 A3 类的公共财产。
这是一个例子:
package
{
public class A3 extends MovieClip
{
// declare as class property
public var t:String;
public function A3()
{
// assign value to class property t
t = "Test";
}
public function doSomething():void
{
// this local variable is not accessible outside this function
var someVariable:String = "test";
}
}
}
正如评论者所指出的,如果您选择不将属性声明为公共/私有,则它默认为私有,因此在类外不可见。您不能在方法中将变量声明为公共/私有变量。在方法中声明的任何变量都限定在该方法的范围内——局部变量——并且只能在该方法中访问。