Flash ActionScript 3.0的出现,不仅从形式上改变了ActionScript,而且从本质上改变了ActionScript,使ActionScript 3.0成为了真正的面向对象编程语言。
本书从最简单的编程知识出发,带领读者走进编程的大门,是一本不可多得的ActionScript 3.0入门书。本书在注重基础的同时,从更高的层次来介绍ActionScript 3.0的面向对象特性,使读者在不知不觉巾掌握面向对象编程。
本书还介绍了许多数学、物理、设计模式等知识,并从这些知识出发,结合ActionScript 3.0的特性,介绍了大量编程经验和技巧,使读者看完本书就能开发较大型的应用程序。
本书适合初、中级读者,游戏、网站开发人员,网络应用程序开发人员等,也适合广大的ActionScript3.0编程爱好者。
第1章 了解ActionScript3.0
1.1 ActionScript的历史
1.2 认识舞台和主时间轴
1.2.1 舞台(Stage)
1.2.2 主时间轴(Main Timeline)
1.2.3 理解舞台和主时间轴
1.3 了解变量
1.3.1 定义变量
1.3.2 给变量赋值
1.3.3 输出变量值
1.3.4 重复赋值
1.3.5 变量stage与舞台
1.3.6 变量root与主时间轴
1.4 通过属性面板定义变量
1.4.1 控制影片剪辑实例
1.4.2 控制动态文本
1.5 变量的执行顺序
1.5.1 帧的播放顺序
1.5.2 图层的加载顺序
1.5.3 play()命令无效的问题
1.6 了解动作面板
1.6.1 动作面板的组成
1.6.2 使用代码提示
1.6.3 代码折叠
1.7 代码注释
1.7.1 单行注释
1.7.2 多行注释
1.7.3 文档注释
1.8 代码位置
1.8.1 外部文件代码
1.8.2 类代码
第2章 简单数据类型
2.1 数据类型
2.1.1 声明数据类型
2.1.2 包装类
2.2 int类型和int类
2.2.1 int类型表示整数
2.2.2 取整数的数位
2.2.3 了解toStrin90方法
2.3 uint类型与uint类
2.3.1 RGB颜色
2.3.2 键控代码
2.4 Number类型与Number类
2.4.1 浮点数
2.4.2 注意浮点运算
2.5 Boolean类型与Boolean类
2.6 String类型与String类
2.6.1 定义字符串
2.6.2 字符串的索引
2.6.3 了解转义符
2.7 变量名的命名规则
2.7.1 变量名是标识符
2.7.2 同一个变量名不能重复定义
2.7.3 不能用MovieClip类的属性名和方法名
2.7.4 不能使用关键字
2.8 变量的更多知识
2.8.1 变量的默认值
2.8.2 变量定义与代码优化
2.8.3 “*”类型与自动类型转换
2.8.4 类型转换函数
第3章 复杂数据类型
3.1 复杂数据类型
3.1.1 包与类
3.1.2 使用Stage类
3.1.3 new运算符
3.2 使用显示类
3.2.1 创建MovieClip类的实例
3.2.2 创建Bitmap类的实例
3.2.3 用反射动态创建实例
3.2.4 使用事件
3.3 静态方法和静态属性
3.3.1 了解Math类
3.3.2 事件类的常量属性
3.3.3 使用静态方法
3.4 理解引用
3.4.1 简单数据类型变量
3.4.2 复杂数据类型变量
3.4.3 比较简单变量和引用变量
3.5 垃圾回收
3.5.1 引用计数算法
3.5.2 标记和清除算法
3.5.3 delete与动态类
3.6 类型检测与转换
3.6.1 typeof()函数
3.6.2 is运算符与继承链
3.6.3 类型转换函数与as运算符
3.7 数组访问运算符
3.7.1 创建和访问数组
3.7.2 this关键字
3.7.3 动态访问属性和方法
第4章 流程控制
4.1 条件语句
4.1.1 if语句
4.1.2 if-else语句
4.1.3 条件运算符
4.1.4 else.if语句
4.1.5 if语句的嵌套
4.1.6 switch语句
4.2 循环语句
4.2.1 while循环语句
4.2.2 d0…while循环语句
4.2.3 for循环语句
4.2.4 for in循环语句
4.2.5 for each in语句
4.2.6 循环语句的嵌套
4.3 其他语句
4.3.1 break语句
4.3.2 continue语句
4.3.3 label标签语句
4.4 帧循环
4.4.1 多帧循环
4.4.2 enterFrame事件
4.5 间隔循环
4.5.1 setInterval0函数
4.5.2 setTimeout0函数
4.5.3 Timer类
第5章 函数
5.1 认识函数
5.2 定义和调用函数
5.2.1 用function定义函数
5.2.2 用“()”调用函数
5.2.3 函数名及引用
5.2.4 返回语句
5.2.5 如何编写函数
5.3 函数的参数
5.3.1 形式参数和实际参数
5.3.2 值传递和引用传递
5.3.3 参数的默认值
5.3.4 任意数量的参数
5.4 变量的类型
5.4.1 局部变量
5.4.2 实例变量
5.5 函数调用的高级知识
5.5.1 arguments类与递归调用
5.5.2 Function类与函数调用
5.5.3 动态调用函数
5.5.4 取代条件语句的技巧
5.6 开发3D菜单
5.6.1 结构设计
5.6.2 把素材导入库中
5.6.3 从库中导出图片
5.6.4 让图标旋转
5.6.5 设置图标的属性
5.6.6 添加菜单的交互性
第6章 显示对象
6.1 初识显示类
6.1.1 抽象、继承与DisplayObject类
6.1.2 交互.InteractiveObject类
6.1.3 容器与DisplayObjectContainer类
6.2 绘图与Graphics类
6.2.1 了解Graphics类
6.2.2 编写绘图代码的技巧
6.2.3 绘图曲线
6.2.4 绘制填充图形
6.3 了解显示列表
6.3.1 显示列表(display list)与应用程序架构
6.3.2 创建显示列表
6.3.3 上一级引用
6.3.4 下一级引用
6.3.5 关于手工创建的显示列表
6.4 深度管理
6.4.1 了解深度
6.4.2 z顺排列
6.4.3 交换深度
6.4.4 深度使用技巧
6.5 基于时间轴的程序开发
6.5.1 【库】面板
6.5.2 帧标签与FrameLabel类
6.5.3 打方块游戏
6.5.4 帧代码与addFrameScript()函数
6.6 预载技术
6.6.1 了解Loaderlnf0类
6.6.2 最简单的预载
6.6.3 预载的高级用法
6.7 使用动画包
6.7.1 使用Animator类制作补问动画
6.7.2 使用Tween类制作补间动画
6.7.3 使用TransitionManager类制作过渡效果
第7章 事件处理
7.1 事件处理概述
7.1.1 早期的事件处理模型
7.1.2 新事件处理模型的特点
7.1.3 事件的发送者
7.1.4 事件名
7.1.5 事件的接收者
7.1.6 事件对象
7.1.7 事件类的架构
7.2 掌握Event类
7.2.1 事件流(event flow)
7.2.2 Event类的bubbles和eventPhase属性
7.2.3 Event类的target和lcurrentTarget属性
7.2.4 事件的默认行为(Default behaviors)
7.2.5 事件的优先级与事件阻止
7.2.6 关于弱引用
7.2.7 自定义事件
7.3 处理DisplayObject类的事件
7.3.1 activate事件币ldeactivate事件
7.3.2 added和removed事件
7.3.3 enterFrame和render事件
7.3.4 显示实例与普通实例的区别
7.4 处理交互对象的键盘事件
7.4.1 KeyboardEvent类
7.4.2 使用组合键
7.4.3 使用updateAfterEvent()
7.4.4 用类保存键控代码
7.5 使用鼠标事件
7.5.1 MouseEvent类
7.5.2 处理滚轮事件
7.5.3 扩展鼠标事件
7.5.4 检测鼠标移动的速度
7.5.5 批量拖动显示对象
7.5.6 检测持续按下鼠标
7.5.7 鼠标控制的转盘
7.5.8检测鼠标是否离开了影片
第8章 Flash数学基础
8.1 坐标与注册点
8.1.1 舞台中的坐标
8.1.2 中心点和注册点
8.1.3 【信息】面板中的坐标
8.1.4 影片剪辑实例的坐标
8.1.5 全局坐标和本地坐标
8.1.6 动态修改注册点
8.2 角度
8.2.1 手工设置显示实例的角度
8.2.2 程序设置角度
8.2.3 角度和弧度
8.2.4 坐标中的角度
8.3 Math类
8.3.1 勾股定理
8.3.2 正余弦函数
8.3.3 正余弦曲线
8.3.4 随机方法
8.4 二维坐标系统与Point类
8.4.1 有向线段
8.4.2 定比分点
8.4.3 极坐标和笛卡儿坐标
8.5 直线与Line类
8.5.1 倾斜角与斜率
8.5.2 直线方程
8.5.3 两直线的交点
8.5.4 点到直线的距离
8.6 矩形与Rectangle类
8.6.1 获取矩形区域
8.6.2 DisplayOhject类的scoilRect属性
8.6.3 缩放与DisplayObject类的scaleg Grid属性
第9章 Flash物理基础
9.1 速度与运动
9.1.1 基于帧的运动
9.1.2 基于时间的运动
9.2 力与加速度
9.2.1 重力
9.2.2 弹性力
9.2.3 匀速圆周运动
9.2.4 两点间的运动
9.3 简单碰撞检测
9.3.1 形状与形状碰撞
9.3.2 点与形状碰撞
9.3.3 矩形与形状碰撞
9.4 二维向量
9.4.1 了解向量
9.4.2 向量的表示方法
9.4.3 了解Vector类
9.4.4 Vector类的构造函数
9.4.5 angle和length属性
9.4.6 display()方法
9.4.7 reset()和clone()方法
9.4.8 向量的四则运算
9.4.9 点积与标准化
9.4.10 向量投影
9.5 高级碰撞检测与反应
9.5.1 圆与线段的碰撞检测
9.5.2 圆与线段的碰撞反应
9.5.3 穿墙现象
9.5.4 完整的例子
第10章 面向对象编程基础
10.1 包与类路径
10.1.1 了解类的定义
10.1.2 编写第一个类
10.1.3 使用包
10.1.4 类路径
10.2 属性
10.2.1 成员变量与局部变量
10.2.2 实例属性与静态属性
10.2.3 控制属性的读写
10.3 方法
10.3.1 初识构造方法
10.3.2 用构造函数传递参数
10.3.3 在构造函数中使用this
10.3.4 默认构造函数
10.3.5 实例方法和静态方法
10.4 修饰符
10.5 了解继承
10.5.1 隐式继承
10.5 2 显式继承
10.5.3 原型继承
10.6 文档类
10.6.1 了解文档类
10.6.2 文档类与帧代码
10.6.3 文档类与界面的联系
10.7 链接类
10.7.1 自动定义链接类
10.7.2 自定义链接类
10.7.3 使用swf资源库
10.7.4 类加载与应用程序域
10.8 成员与继承
10.8.1 无参构造函数
10.8.2 有参构造函数
10.8.3 0verride修饰符
10.8.4 protected修饰符
10.8.5 静态成员
10.8.6 final修饰符
10.9 类之间的关系
10.9.1 基础知识
10.9.2 应用——帧频检测
10.10 了解接口
10.10.1 接口是标准
10.10.2 定义接口的语法
10.10.3 接口继承
10.10.4 接口的实现
第11 章设计模式
11.1 事件处理与观察者模式
11.1.1 观察者模式
11.1.2 事件处理机制
11.1.3在类中自定义事件
11.2 MVC模式
11.2.1 模型设计
11.2.2 视图实现
11.2.3 控制器实现
11.3 工厂模式
11.3.1 简单工厂模式
11.3.2工厂方法模式
11.4 单例模式
11.4.1 静态工厂方法
11.4.2 辅助类与单例模式
11.4.3 实例——工具提示
11.5 模板方法模式
11.5.1 抽象类与抽象方法
11.5.2 模板方法
11.5.3 子类实现
11.5.4 优化模式
11.6 实例——显示多视图
11.6.1 需求介绍与分析
11.6.2 编写DefaultView类
11.6.3 编写具体内容类
11.6.4 多态
11.6.5 设计文档类
11.7 界面应用程序
11.7.1 类图分析
11.7.2 模型设计
11.7.3 视图设计
11.7.4 创建视图
11.7.5 控制器设计
11.8 迭代子模式
11.8.1 了解迭代子模式
11.8.2 迭代
11.8.3 聚集
11.8.4 逆序迭代
11.8.5 扩展聚集
11.9 合成模式
11.9.1 显示类的架构
11.9.2 实现合成模式
11.9.3 遍历显示对象
11.10 装饰模式
11.10.1 了解装饰模式
11.10.2 使用装饰类
11.10.3 装饰显示对象
11.11 策略模式
11.11.1 了解策略模式
11.11.2 统计图
第12章 FIash与服务器端程序间的通信
12.1 ASP简介
12.1.1 ASP的特点
12.1.2 搭建ASP运行环境
12.1.3 体验ASP
12.1.4 ASP开发工具
12.2 Flash与ASP之间的通信
12.2.1 Flash从文本文件获取数据
12.2.2 Flash从ASP获取数据
12.2.3 Flash提交简单数据给ASP
12.2.4 Flash提交复杂数据给ASP
12.3 Flash与数据库之间的通信
12.3.1 Flash读取与修改数据库中的数据
12.3.2 Flash查询和添加数据库数据
12.4 Flash结合ASP开发实例
12.4.1 文件上传系统
12.4.2 天气预报系统
12.5 FMS简介
12.5.1 FMS的特点
12.5.2 搭建FMs服务器
12.5.3 配置FMS
12.5.4 管理FMS
12.6 Flash与FMS之间的通信
12.6.1 播放服务器端的视频
12.6.2 将视频录制到服务器上
12.6.3 文本聊天的实现
12.6.4 视频聊天的实现
12.7 php简介
12.7.1 安装php
12.7.2 安装MySQL
12.7.3 检查php与MySQL的连接
12.7.4 安装AMF
12.7.5 读写数据库
第13 章高级主题
13.1 正则表达式
13.1.1 如何判断中文字符
13.1.2 则表达式的作用
13.1.3 创建正则表达式
13.1.4 使用正则表达式
13.1.5 查找和替换英文单词
13.1.6 删除头和尾的空白字符
13.1.7 了解RegExp类和Strin9类
13.1.8 转义
13.1.9 使用编码
13.1.10 了解元字符
13.1.11 数量词
13.1.12 匹配的范围
13.1.13 组合与或运算
13.1.14 查找与替换文本
13.1.15 代码加亮
13.2 E4X
13.2.1 节点
13.2.2 节点的属性
13.2.3 使用CDATA
13.2.4 使用变量创建XML
13.2.5 使用外部XML文件
13.2.6 加载XML文件
13.2.7 选择XML中的数据
佐藤可士和(KashiwaSato),艺术指导,创意指导。1965年生于东京。1989年毕业于多摩艺术大学,毕业后进入日本知名广告公司“博报
《小学生漫画抗挫力·全3册(新版)》内容简介:小学生漫画抗挫力(全3册)是一套原创少儿心灵成长书。本书分为《挫折承受力》《心
《2015年MBA、MPA、MPAcc管理类联考逻辑及写作历年真题详解》内容简介:《2015年MBA、MPA、MPAcc管理类联考逻辑及写作历年真题详解
这本书中的99种发明,是矗立在人类历史进程中一座座闪耀着智慧之光的丰碑,一位先哲说过:几千年来,在人类生活中,任何帝国、任
《一日一练!色铅笔动漫手绘自学教程+练习册·综合》内容简介:在手账风行、条漫漫天、同人火爆的今日,零基础的你是否也做过画出超
《第一行代码:Android(第2版)》内容简介:本书被广大Android 开发者誉为“Android学习第一书”。全书系统全面、循序渐进地介绍了
计算机绘图AutoCAD2005-2007中文版 内容简介 本书以AutoCAD 2005中文版为基础,详细介绍了AutoCAD平面绘图、三维立体建模和灯光、材...
《我的前半生》内容简介:一生“做了四次皇帝”的溥仪 亲述清朝覆亡史、民国兴衰史、共和国兴盛史 比清宫剧更细致,比历史书更生动
商务智能-第二版 本书特色 商务智能是近年来企业信息化的热点,有着广阔的应用前景。赵卫东编著的《商务智能(第2版)》首先介绍了商务智能的基本概念、商务...
从零开始——Photoshop中文版典型实例 内容简介 Adobe公司推出的Photoshop软件集图像处理和矢量图形绘制于一体,自推出之日起就深受广大平面设计...
《画出来的箴言》批判了现代艺术发展过程中某些虚伪可笑的现象:艺术被功利化,被用来欺蒙大众;富人们追求现代艺术只是赶时髦;
吴信东(XindongWu),教授英国爱丁堡大学人工智能学博士,任美国佛蒙特大学计算机科学系主任。吴教授在数据挖掘、知识系统和Web
《创新思维与科技创新》内容简介:科技创新包括知识创新、技术创新和管理创新,是当代大学生必须学习和掌握的创新、创业的基础且重
网络工程师-全国计算机等级考试四级教程-2011年版 本书特色 《全国计算机等级考试四级教程:网络工程师(2011年版)》是由高等教育出版社出版的。网络工程师-...
《肿瘤居家康复指导》内容简介:本书从专业的角度,阐明了恶性肿瘤患者康复过程中的主要技术与要点,,包括了康复中患者心理、生理
尼可拉斯.卡爾(NicholasG.Carr)知名作家兼思想家,專研商業策略、資訊科技及兩者的交叉點,在《哈佛商業評論》寫過包括〈IT沒有
《唐草物语》内容简介:本书于1981年获得第九届泉镜花文学奖。本书是作者以历史上十二位著名人物的故事为蓝本,用自己独特的奇幻风
《全面预算管理》内容简介:全面预算管理作为管理会计的重要内容之一,能够帮助企业作出明智的决策,进而创造价值,并保证企业持续
《被颠覆的汽车帝国:中国汽车电商与车联网生态报告》内容简介:本书对移动互联网时代下的车企的现状及当代车企的营销活动进行了深
本书深入而又系统地介绍了以软件完全虚拟化、硬件辅助虚拟化及类虚拟化为核心的各种系统虚拟化技术。全书共9章,第1章概述性地介