`
啸笑天
  • 浏览: 3462360 次
  • 性别: Icon_minigender_1
  • 来自: China
社区版块
存档分类
最新评论

Java5.0与ActionScript3.0语法比较

    博客分类:
  • Flex
阅读更多

语言结构/语法 Java 5.0 ActionScript 3.0
类包 .jar .swc
继承 class Employee extends Person{…} class Employee extends Person{…}
变量声明及初始化 String firstName=”John”;
Date shipDate=new Date();
int i;
int a, b=10;
double salary;
var firstName:String=”John”;
var shipDate:Date=new Date();
var i:int;
var a:int, b:int=10;
var salary:Number;
未声明的变量 n/a var myVar:*;
变量作用域 声明在花括号内的,作用域也在括号内。
声明在函数里的,作用域即在函数里。
成员变量:声明在类里。
没有全局变量。
没有花括号作用域,最小的作用域范围是方法。
声明在函数里的,作用域即在函数里。
成员变量:声明在类里。
如果一个变量的声明不在任何类或方法里,那么它就是全局变量。
字符串 不可变类 不可变类
分号终结符 必须的 如果一条语句一行的话,你可以省略分号。
严格等于号 n/a ===
严格不等号:!==
常量符号 关键字 final
final int STATE= 1;
关键字const
const STATE:int = 1;
类型检查 静态的 (在编译时检查) 动态的 (在运行时检查和静态的(也叫‘strict mode’,  Flex Builder中是默认的)
类型检查符 instanceof is – 检查数据类型例如 if (myVar is String){…}
as操作符 n/a 很像is操作符但是返回值不是布尔型而是表达式:
var orderId:String=”123”;
var orderIdN:Number=orderId as Number;
trace(orderIdN);//prints 123
原始类型 byte, int, long, float, double,short, boolean, char 所有的原始类型在ActionScript中都是对象。
Boolean, int, uint, Number, String
下面两行是相同的
var age:int = 25;
var age:int = new int(25);
复杂类型 n/a Array, Date, Error, Function, RegExp, XML, and XMLList
数组的声明与实例化 int quarterResults[];
quarterResults =
new int[4];
int quarterResults[]={25,33,56,84};
var quarterResults:Array
=new Array();
or
var quarterResults:Array=[];
var quarterResults:Array=
[25, 33, 56, 84];
AS3
也有以命名的方式代替元素序号的数组,类似Hashtable
最基础的对象 Object Object
类型转换语法Object类转为Person Person p=(Person) myObject; var p:Person= Person(myObject);
或者

var p:Person= myObject as Person;
向上声明 class Xyz extends Abc{}
Abc myObj = new Xyz();
class Xyz extends Abc{}
var myObj:Abc=new Xyz();
package com.xyz;
class myClass {…}
package com.xyz{
class myClass{…}
}
ActionScript
的包不仅能包含类,也能包含独立的方法。
类访问级别 public, private, protected
如果没有说明,该类就是能在包内访问。
public, private, protected
如果没有说明,类就是internal访问级的(类似Java中的包访问级)。
常规的访问级别:命名空间 n/a 类似XML的命名空间。
namespace abc;
abc function myCalc(){}

abc::myCalc(){}
use namespace abc ;
控制台打印 System.out.println(); // 只在debug模式下有效
trace();
Imports导入 import com.abc.*;
import com.abc.MyClass;
import com.abc.*;
import com.abc.MyClass;
无顺序的键值对 Hashtable, Map
Hashtable friends = new Hashtable();
friends.put(”good”,
“Mary”);
friends.put(”best”,
“Bill”);
friends.put(”bad”,
“Masha”);
String bestFriend= friends.get(“best”);
// bestFriend is Bill
var friends:Array=new Array();
friends[”good”]=”Mary”;
friends[”best”]=”Bill”;
friends[”bad”]=”Masha”;
var bestFriend:String= friends[“best”]
friends.best=”Alex”;
Another syntax:
var car:Object = {make:”Toyota”, model:”Camry”};
trace (car[”make”], car.model);
// Output: Toyota Camry
提升 n/a 编译器会将方法中所有变量声明提到顶端,所以你可以用一个变量名甚至在它声明之前。
实例化 Customer cmr = new Customer();
Class cls = Class.forName(“Customer”);
Object myObj= cls.newInstance();
var cmr:Customer = new Customer();
var cls:Class = flash.util.getClassByName(“Customer”);
var myObj:Object = new cls();
私有类 private class myClass{…} AS3中没有私有类
私有的构造函数 支持 不支持
类和文件名 一个文件可以有多个类声明,但是只能有一个是public,并且这个文件名必须和这个类名一致。 一个文件可以有多个类声明
包里能放什么 类和接口 接口变量方法命名空间和可执行的声明
动态类 (定义一个可以在运行时动态添加修改属性和方法的类). n/a dynamic class Person {
var name:String;
}
//
动态的添加变量和方法

Person p= new Person();
p.name=”Joe”;
p.age=25;
p.printMe = function () {
trace (p.name, p.age);
}
p.printMe(); // Joe 25
方法 closure n/a. myButton.addEventListener(“click”, myMethod);
抽象类 支持 n/a
方法重载 支持 支持必须使用override声明
方法过载 支持 不支持
接口 class A implements B{…}
接口可以包括方法的声明和静态变量。
class A implements B{…}
接口只能存放方法的声明。
异常处理 关键字: try, catch, throw, finally, throws
未捕捉的异常会向上传递到调用它的方法。
关键字: try, catch, throw, finally
方法不必声明异常。

不仅可以抛出Error对象,也能抛出数字:
throw 25.3;
一旦有未捕捉的异常Flash Player立即停止脚本执行。
正则表达式 支持 支持

感谢:http://akalius.iteye.com/blog/153274

分享到:
评论

相关推荐

    ActionScript 3.0语法参考手册

    ### ActionScript 3.0 运算符详解 #### 一、加法运算符 `+` 加法运算符用于将两个数值相加。在ActionScript 3.0中,它还可以用于字符串连接。 **示例代码:** ```actionscript var x:Number = 5; var y:Number = ...

    ActionScript 3.0开发技术大全(第一部分)

     第3章 ActionScript3.0语法 第2篇 ActionScript3.0面向对象特性  第4章 ActionScript3.0面向对象编程  第5章 ActionScript3.0中的String对象  第6章 ActionScript3.0中的Array类型  第7章 ActionScript3.0...

    Actionscript3.0基础语法

    ActionScript 3.0 的基础语法是理解Flash和Flex开发的关键。 首先,我们要了解ActionScript 3.0中的显示对象(DisplayObject)体系。DisplayObject 类是所有可显示元素的基类,包括交互对象和非交互对象。交互对象...

    ActionScript 3.0 API文档(CHM+HTML最新中文完整)

    附录,比较 ActionScript 2.0 与 ActionScript 3.0 的某些关键语言和 API 的改动 有关错误和警告的附录(带注释) 具有关使用 XML 支持补间动画和 FLVPlayback 字幕的参考信息的附录。 具有关对 Adobe AIR 使用...

    Flash ActionScript3.0教程示例(从入门到精通).rar

    首先,ActionScript3.0相比之前的版本有了显著的性能提升,语法更接近于现代面向对象编程语言,如Java和C#。这使得它在处理复杂的计算和数据操作时更为高效。教程会从基础开始,介绍AS3.0的变量、数据类型、流程控制...

    Flash ActionScript 3.0 编程技术教程(附书光盘)

    鉴于ActionScript 3.0较之前版本的变化,为了适应更多的读者,本书没有过多强调ActionScript 3.0与ActionScript 2.0的区别,而是直接从ActionScript 3.0的语法结构、编写习惯开篇,由浅入深展开讲解。第1~5章介绍了...

    ActionScript3.0 Game Programing中文版

    《ActionScript3.0 Game Programming》是一本专为游戏开发者设计的权威教程,中文版的出版使得更多中国读者能够深入理解和掌握ActionScript3.0在游戏开发中的应用。这本书不仅覆盖了ActionScript的基础语法和面向...

    最专业的ActionScript 3.0

    ActionScript 3.0是一种强大的编程语言,主要用于实现Flex应用的业务逻辑和控制,与MXML一起构成了Flex应用程序开发的基础。ActionScript 3.0在Flash Player运行环境中执行,借助ActionScript虚拟机(ActionScript ...

    ActionScript 3.0 编程.rar

    学习ActionScript 3.0不仅涉及语法和基本概念,还包括深入理解如何利用其特性来创建交互式内容。例如,使用Tween类和TimelineControl类可以实现平滑的动画效果;使用Sound和NetStream类可以处理音频和视频播放;使用...

    actionscript 3.0动画制作教程

    1. **关键帧与补间动画**:在ActionScript 3.0中,你可以利用Flash的时间轴创建基本的动画。关键帧定义了动画中的不同状态,而补间动画则是在关键帧之间创建平滑过渡。例如,你可以创建一个对象沿屏幕移动的动画,只...

    ActionScript3.0完全自学手册电子教案_ActionScript3.0_

    1. **基础概念与环境设置**:首先,你需要了解ActionScript3.0的基础,包括变量、数据类型(如Number、String、Boolean)、运算符以及流程控制(如if语句、for循环、while循环)。此外,还需要设置开发环境,如安装...

    ActionScript3.0宝典 pdf 高清晰

    ActionScript 3.0的另一个关键特性是与Flash Player和Adobe AIR的紧密集成,使得开发者可以创建跨平台的桌面和Web应用程序。Flex框架则提供了丰富的组件库和MXML标记语言,让非程序员也能构建用户界面。 文件...

    Flash ActionScript 3.0编程技术教程(全)

    鉴于ActionScript 3.0较之前版本的变化,为了适应更多的读者,本书没有过多强调ActionScript 3.0与 ActionScript 2.0的区别,而是直接从ActionScript 3.0的语法结构、编写习惯开篇,由浅入深展开讲解。第1~5章介绍...

    Foundation ActionScript 3.0 Animation

    《Foundation ActionScript 3.0 Animation》是一本...《foundation Actionscript3.0 Animation.pdf》这个文件很可能是这本书的电子版,包含完整的章节内容和可能的练习案例,对于自学或者参考来说是非常宝贵的资源。

    ActionScript3.0帮助文档完整版

    在解压后的“ActionScript3.0chm完整版”文件中,你将找到详细的API参考、教程和示例代码,这些都能帮助你掌握ActionScript 3.0的核心概念和技术。无论是学习基本语法、类库使用,还是深入到高级特性,这个文档都是...

    ActionScript 3.0动态绘制正弦曲线(附源码)

    ActionScript 3.0是Adobe Flash Professional和Flex SDK中用于创建富互联网应用程序(RIA)的主要编程语言。在“ActionScript 3.0动态绘制正弦曲线”这个项目中,开发者利用了AS3的强大功能来创建可视化图形,特别是...

    Flash ActionScript 3.0动画教程(中文高清)+源码

    《Flash ActionScript 3.0动画教程》是一本专为学习和掌握Flash中ActionScript 3.0编程语言而设计的教程,特别适合对动画制作和互动设计感兴趣的读者。ActionScript 3.0是Adobe Flash Platform的核心编程语言,它的...

    flex中文帮助 ActionScript3.0中文帮助

    用于比较 ActionScript 2.0 与 ActionScript 3.0 的某些关键语言和 API 更改的附录 带有注释的错误和警告的附录 本参考可通过多种途径获得:在创作工具的“帮助面板”中;从 LiveDocs 下载获得。本参考适合与其它...

    ActionScript3.0cookbook中文版

    ActionScript3.0相较于之前的版本,有着显著的性能提升和语法改进,包括类型系统、类和对象的完全支持,以及更严格的错误检查。书中的内容涵盖了ActionScript3.0的基础知识,如变量、函数、类的定义和使用,同时也...

Global site tag (gtag.js) - Google Analytics