`
NewTamato
  • 浏览: 101322 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

flex namespace 入门

阅读更多

actionscript3.0入门(三) - namespace

2008-12-09  |  19:34分类:前端开发   |作者: louxinhua1984 |   标签:flex actionscript3.0   |  <!-- louxinhua1984-->151 views

1. actionscript3.0中的namespace
actionscript3.0中的namespace用来修饰变量名、方法名、xml标签、xml属性,其限
制了变量名、方法名、xml标签、xml属性的意义。

2. 创建namespace
我们创建namespace使用namespace关键字:
public namespace alisoft = “http://www.alisoft.com/”;
public namespace taobao = “http://www.taobao.com/”;
public namespace alipay = “https://www.alipay.com/”;
public namespace sme = “http://cn.alisoft.com/sme/”;
甚至
public namespace louxinhua;
一个最佳实践是namespace的值用URI,在上面的例子中
public namespace louxinhua;
这个namespace的uri属性值不是空,而是louxinhua。

3. 使用namespace限制变量、方法,包括namespace值一样的情况。
当声明了namespace以后我们就可以用它们来修饰我们的变量名、方法名。(这里不
引入xml)
比如 :
变量
alisoft var customerId:String = “123456”;
taobao var customerId:String = “123456”;
sme var customerId:String = “123456”;
方法
alisoft function sayHello():void {
……
}
taobao function sayHello():void {
……
}
sme function sayHello():void {
……
}
假如我们定义了2个namespace,其uri又是一样的, 比如
namespace test1 = “http://www.alisoft.com/”;
namespace test2 = “http://www.alisoft.com/”;
那么当我们去修饰相同的变量名或方法名时,flash编译将会不能通过。比如:
test1 var customerId;
test2 var customerId;

4.可以用namespace修饰的地方。
目前在actionscript3.0中,没有类变量、类方法才能被修饰。所以下面的情况都会出错:
alisoft class Test {
}

public function doSomething() :void {
alisoft var someVar:String;
}

package  p {
alisoft var someVar:String;
}
5.使用被namespace修饰过的变量、方法(包括use类型)
如果我们要引用被namespace修饰过的变量、方法,那么得用”::”的形式。
比如: alisoft:: sayHello();

package {
import flash.display.Sprite;
import test.as3.classtwo.Shoutable;
import test.as3.classtwo.impl.DefaultShout;
import test.as3.classtwo.impl.ShoutExt;
public class HelloWorld extends Sprite
{
public namespace alisoft = “http://www.alisoft.com/”;
public namespace taobao = “http://www.taobao.com/”;
public namespace alipay = “https://www.alipay.com/”;
public function HelloWorld()
{
alisoft::sayHello();
taobao::sayHello();
alipay::sayHello();
}
alisoft function sayHello():void {
trace(”alisoft say hello”);
}
taobao function sayHello():void {
trace(”taobao say hello”);
}
alipay function sayHello():void {
trace(”alipay say hello”);
}
}
}

下面看看完整的一个例子:
debug运行输出

如果觉得alisoft::sayHello()这样写比较麻烦, 可以用use来打开namespace。
比如: use namespace alisoft;
则 alisoft::sayHello() 可以写成sayHello()
当时这样作也有缺点,因为我们的例子里面taobao也有sayHello方法,如果同时
use namespace alisoft;
use namespace taobao;
那么当sayHello()时,就会有编译错误。

6. namespace举例
这里的例子是来自Adobe的Flex框架。Flex包括了几百个类,这些类分布在不同的包
中。一些类的变量和方法必须被其他包访问到,但是又不想被框架之外的类访问到。所以不
能把这些变量和方法声明为public。
为了类似达到这个目的,Flex框架就定义了一个namespace,mx_internal。
public namespace mx_internal = “http://www.adobe.com/2006/flex/mx/internal/”;
需要用到的类会use namespace mx_internal;
这说明了一些变量、方法是不希望被框架之外的类访问的。
为什么说是类似达到这个目的, 因为我们知道了namespace的uri,也就可以访问到
该命名空间下的东西了。

分享到:
评论

相关推荐

    Flex从入门到精通源代码

    这是Flex从入门到精通这本书上的源代码 需要的朋友可以拿去看看啊

    Flex从入门到实践

    Flex从入门到实践.ppt Flex从入门到实践.ppt

    Flex+入门(适用于初学者)

    Flex+入门,很详细很初步的入门知识。

    Flex从入门到精通

    Flex从入门到精通,电子书,深入浅出,工具书。。

    flex精通 flex入门

    flex精通 flex入门flex精通 flex入门flex精通 flex入门flex精通 flex入门flex精通 flex入门flex精通 flex入门flex精通 flex入门flex精通 flex入门flex精通 flex入门

    Flex从入门到实践.

    flex从入门到实践,PPT格式,是FLEX入门的好工具,有兴趣的可以看看

    FLEX快速入门.zip

    FLEX快速入门.zip 用户在界面输入的数据可能不适合应用系统。在Flex应用程序中,可以使用validator来确保表单里的字段值满足某些标准。例如,你可以使用validator来确定用户输入有效的电话号码,确定字符串大于最小...

    Flex教程大全 flex快速入门

    Flex教程 flex快速入门 使用 使用 MXML 和 和 ActionScript进行编码 进行编码进行编码 Adobe® 将 Flex 实施为 ActionScript

    FLEX 入门培训FLEX 入门培训

    FLEX 入门培训FLEX 入门培训FLEX 入门培训FLEX 入门培训FLEX 入门培训FLEX 入门培训

    Flex4中文快速入门

    Flex4中文快速入门;

    Flex从入门到精通PPT

    Flex从入门到精通PPT Flex从入门到精通PPT Flex从入门到精通PPT Flex从入门到精通PPT Flex从入门到精通PPT

    Flex从入门到精通源文件

    Flex从入门到精通源文件 Flex从入门到精通源文件 Flex从入门到精通源文件 Flex从入门到精通源文件 Flex从入门到精通源文件

    Flex从入门到实践2

    Flex从入门到实践2Flex从入门到实践2Flex从入门到实践2Flex从入门到实践2Flex从入门到实践2

    FLEX简单的入门快速总结

    FLEX 数据绑定 Flex HTTPservice使用 Flex 创建自定义事件。 其它入门基础等。

    Flex 入门教学材料

    Flex 入门 Flex 入门 Flex 入门 Flex 入门 Flex 入门

    Flex Blazeds入门教程

    Flex Blazeds入门教程 写的很不错的教程

    Flex开发入门

    Flex开发入门,包含如何新建mxml文件,包含如何与j2ee项目进行交互,项目demo源码已经包含在压缩包内,绝对跑的起来

    Flex从入门到实践.pdf

    本书循序渐进地介绍了Flex从基础知识到高级应用。书中的每一个章节都使用了实例来说明,并穿插了大量的说明、注意事项和操作技巧。本书共分为24章,分别介绍了Flex语言基础、交互设计、布局导航、行为样式、数据通信...

Global site tag (gtag.js) - Google Analytics