📄 sampleinnernamespace.as
字号:
package org.kingda.book.basicoop.namespaces
{
import flash.display.Sprite;
public class SampleInnerNamespace extends Sprite
{
public function SampleInnerNamespace() {
var foo:Foo = new Foo();
trace (Foo.good);
//输出:SampleInnerNamespace.as$0:Foo/good
//这就可以看穿定义在类中的namespace的性质了,类似静态成员
var nameisStatic:Namespace = Foo.good;
foo.nameisStatic::hello();
//trace (Foo.bad); //报错,私有命名空间不可访问
//通过方法返回命名空间引用,赋值给b。
var b:Namespace = foo.getName();
//再使用b来引用私有命名空间bad下的成员hello(),成功
foo.b::hello();
//输出:Who are you
}
}
}
class Foo{
public namespace good;
private namespace bad;
public function getName():Namespace {
//return this.bad;
//报错:1119: Access of possibly undefined property...
//可见bad不是实例属性
//下面这一行return Foo.good却可以成功。
//可见,实际上命名空间而是一个静态成员。
//return Foo.good;
return bad; //所以,这儿返回的实际上是Foo.good
}
good function hello():void {
trace ("Nice to meet you!");
}
bad function hello():void {
trace ("Who are you");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -