语言结构/语法 |
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立即停止脚本执行。
|
正则表达式 |
支持 |
支持 |
分享到:
相关推荐
### ActionScript 3.0 运算符详解 #### 一、加法运算符 `+` 加法运算符用于将两个数值相加。在ActionScript 3.0中,它还可以用于字符串连接。 **示例代码:** ```actionscript var x:Number = 5; var y:Number = ...
第3章 ActionScript3.0语法 第2篇 ActionScript3.0面向对象特性 第4章 ActionScript3.0面向对象编程 第5章 ActionScript3.0中的String对象 第6章 ActionScript3.0中的Array类型 第7章 ActionScript3.0...
ActionScript 3.0 的基础语法是理解Flash和Flex开发的关键。 首先,我们要了解ActionScript 3.0中的显示对象(DisplayObject)体系。DisplayObject 类是所有可显示元素的基类,包括交互对象和非交互对象。交互对象...
附录,比较 ActionScript 2.0 与 ActionScript 3.0 的某些关键语言和 API 的改动 有关错误和警告的附录(带注释) 具有关使用 XML 支持补间动画和 FLVPlayback 字幕的参考信息的附录。 具有关对 Adobe AIR 使用...
首先,ActionScript3.0相比之前的版本有了显著的性能提升,语法更接近于现代面向对象编程语言,如Java和C#。这使得它在处理复杂的计算和数据操作时更为高效。教程会从基础开始,介绍AS3.0的变量、数据类型、流程控制...
鉴于ActionScript 3.0较之前版本的变化,为了适应更多的读者,本书没有过多强调ActionScript 3.0与ActionScript 2.0的区别,而是直接从ActionScript 3.0的语法结构、编写习惯开篇,由浅入深展开讲解。第1~5章介绍了...
《ActionScript3.0 Game Programming》是一本专为游戏开发者设计的权威教程,中文版的出版使得更多中国读者能够深入理解和掌握ActionScript3.0在游戏开发中的应用。这本书不仅覆盖了ActionScript的基础语法和面向...
ActionScript 3.0是一种强大的编程语言,主要用于实现Flex应用的业务逻辑和控制,与MXML一起构成了Flex应用程序开发的基础。ActionScript 3.0在Flash Player运行环境中执行,借助ActionScript虚拟机(ActionScript ...
学习ActionScript 3.0不仅涉及语法和基本概念,还包括深入理解如何利用其特性来创建交互式内容。例如,使用Tween类和TimelineControl类可以实现平滑的动画效果;使用Sound和NetStream类可以处理音频和视频播放;使用...
1. **关键帧与补间动画**:在ActionScript 3.0中,你可以利用Flash的时间轴创建基本的动画。关键帧定义了动画中的不同状态,而补间动画则是在关键帧之间创建平滑过渡。例如,你可以创建一个对象沿屏幕移动的动画,只...
1. **基础概念与环境设置**:首先,你需要了解ActionScript3.0的基础,包括变量、数据类型(如Number、String、Boolean)、运算符以及流程控制(如if语句、for循环、while循环)。此外,还需要设置开发环境,如安装...
ActionScript 3.0的另一个关键特性是与Flash Player和Adobe AIR的紧密集成,使得开发者可以创建跨平台的桌面和Web应用程序。Flex框架则提供了丰富的组件库和MXML标记语言,让非程序员也能构建用户界面。 文件...
鉴于ActionScript 3.0较之前版本的变化,为了适应更多的读者,本书没有过多强调ActionScript 3.0与 ActionScript 2.0的区别,而是直接从ActionScript 3.0的语法结构、编写习惯开篇,由浅入深展开讲解。第1~5章介绍...
《Foundation ActionScript 3.0 Animation》是一本...《foundation Actionscript3.0 Animation.pdf》这个文件很可能是这本书的电子版,包含完整的章节内容和可能的练习案例,对于自学或者参考来说是非常宝贵的资源。
在解压后的“ActionScript3.0chm完整版”文件中,你将找到详细的API参考、教程和示例代码,这些都能帮助你掌握ActionScript 3.0的核心概念和技术。无论是学习基本语法、类库使用,还是深入到高级特性,这个文档都是...
ActionScript 3.0是Adobe Flash Professional和Flex SDK中用于创建富互联网应用程序(RIA)的主要编程语言。在“ActionScript 3.0动态绘制正弦曲线”这个项目中,开发者利用了AS3的强大功能来创建可视化图形,特别是...
《Flash ActionScript 3.0动画教程》是一本专为学习和掌握Flash中ActionScript 3.0编程语言而设计的教程,特别适合对动画制作和互动设计感兴趣的读者。ActionScript 3.0是Adobe Flash Platform的核心编程语言,它的...
用于比较 ActionScript 2.0 与 ActionScript 3.0 的某些关键语言和 API 更改的附录 带有注释的错误和警告的附录 本参考可通过多种途径获得:在创作工具的“帮助面板”中;从 LiveDocs 下载获得。本参考适合与其它...
ActionScript3.0相较于之前的版本,有着显著的性能提升和语法改进,包括类型系统、类和对象的完全支持,以及更严格的错误检查。书中的内容涵盖了ActionScript3.0的基础知识,如变量、函数、类的定义和使用,同时也...