搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
你好赵伟
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
ImportError: cannot import name ‘db‘ from partially initialized module ‘app‘ (most likely due to a c_importerror: cannot import name 'db' from partiall
2
基于FPGA的数字信号处理(22)--进位保存加法器(Carry Save Adder, CSA)
3
SQLserver2019基本操作
4
Oracle中递归查询(START WITH……CONNECT BY……)
5
leetcode刷题 242.有效的字母异位词_leetcode 第 242 题:给定两个字符串 s 和 t,编写一个函数来判断 t 是否是 s
6
MySQL简单配置GTID_mysql-8.2.0-linux-glibc2.17-x86-64.tar.xz
7
利用C++与Python调用千帆免费大模型,构建个性化AI对话系统_python 免费模型系统
8
2024年第五届“华数杯”全国大学生数学建模竞赛 A题详细思路+详细matlab代码+优秀论文范例
9
ROS2 + 科大讯飞 初步实现机器人语音控制_ubuntu 机器人 语音控制
10
基于 Paimon 的袋鼠云实时湖仓入湖实战剖析
当前位置:
article
> 正文
AS3.0教程:强大的事件机制(3)
作者:你好赵伟 | 2024-08-18 19:23:12
赞
踩
subscribe as3
2) addEventListener语法的不同,原因,和const型必要性和用法
本例如果是AS2.0,那么代码是这样写的:
outsideChild.addEventListener("click", inclassHandler)
本例是3.0,如果你trace一下其中的MouseEvent.CLICK,输出的也是字符串"click"。
看起来AddEventListener的方法和以前也没什么大的出入。和这世界上大多数相同的事物一下,表象的类似却掩盖着本质的巨大差异。
我们先从最小的差异讲起:
[1b]1.使用类静态属性,用const定义事件字符串名称变量[/1b]
AS3.0中用了一个新的关键字定义了事件名称字符串变量,代码是
public static const CLICK:String = "click"
const,是英文constant的缩写,意思使不变的,常量。那就意思很明白了,一旦这种类型的常量被定义就不可再更改。好处通俗的说就是规范好项目,规范你自己,也规范任何其他项目人员,动不了这个变量。
你可能还是会不屑一顾,这么小的一个改动,对我没什么用!
可我的AS2.0开发血泪经验是,我曾经花了一个下午来找bug,最后却发现是某个类的addEventlistener()里面的事件名称"click"手误打成了"cilck"。编译器可不管这个。
如果是3.0,你打成了MouseEvent.CILCK,那么编译时立刻会报错提醒你,多好啊。一个项目一个人做十几个类还好办,自己认真点还能顶的住;如果是一个项目几个人几十个类,那么没有const和static的帮忙,管理事件类型还真是有点麻烦。即使实现了也没有AS3.0这么简单直观。
回到代码,我们要记住,日后我们开发自己的Event类时,也要像这样,用public static const来定义我们自己的事件名称。
如何自定义自己的事件,我会在EventDispatch那一节讲述。
看看代码,我们还发现AS3.0中侦听器也发生变化了,只能用function来做侦听器,不再用Object。
[1b]2.addEventListener高级运用[/1b]
AS3.0中对侦听器的改进远远不止以上这些,看一看addEventListener的实现接口:
function addEventListener(eventName:String,
listener:Object,
useCapture:Boolean=false,
priority:Integer=0,
useWeakReference:Boolean=false):Boolean;
哇塞,有三个莫名奇妙的参数。可是当你知道这三个参数背后隐藏的巨大改进之后,相信你要大叫三个哇塞。
第一个神秘参数,目前暂不解释,埋个伏笔,留到EventDispatcher那一节,讲ActionScript3崭新的Event Flow事件流机制.
第二个参数:优先级。 有趣吧,在ActionScript 3.0中我们可以控制事件的优先级,从而达到控制function侦听器的执行顺序。如果你不填这个参数,那么事件默认为同一个级别0,事件的执行按先来后到的天经地义的顺序。
如果设为1,那么事件级别降一个档次,稍后执行。数字越高优先级越高。级别可以为负数。
[1b](注意: Flex Builder 2 Beta3中事件级别是越低越高)[/1b]
好好利用这个功能吧,在AS2.0中要想达到同样效果可不知道要多费多少力气!
第三个参数,讲的是是否设为弱引用。
兄弟们初学As2.0时一定经常忘了在删除Listener对象时,却忘了removeEventListener吧。这会导致很多莫名奇妙的情况发生。也是最常见的诡异bug种类之一。即使老鸟偶尔也会被阴一把。
最郁闷的是这种情况往往不被发现,在后台默默的消耗大量资源。
现在可以用弱引用可以在某种程度上解决这种bug。
设为true,就是告诉垃圾回收器,这个侦听器function的引用是弱引用。一旦这个侦听器在运行时只剩下了这一个弱引用,那么垃圾回收器可以不理它,直接把它回收咯屁了,节省资源。
[1b]从AS3.0引入这个弱引用这个概念就可以看出,AS3.0是如何的重视资源管理和有效率的运用。一个标准的重量级的程序语言必须具有这样的特征。
现在AS3.0有了![/1b]
下一节:
(3) Listener和As2.0有何不同,和this关键字的“改进了的记忆力”
本文转自:http://www.5uflash.com/flashjiaocheng/Flash-as3-jiaocheng/1763.html
本文内容由网友自发贡献,转载请注明出处:
https://www.wpsshop.cn/w/你好赵伟/article/detail/998847
推荐阅读
article
30
个
AI
变现
案例
,
太全了
,
赶紧实操起来_
ai
变现
最简单
的
方法...
精心整理了
30
个
AI
变现
案例
,
每一个都可以作为一个完整
的
副业去实践
,
AI
时代已经来了
,
所有不甘于现状
的
朋友
,
都应该去下场...
赞
踩
article
DPDK
系列之十七
DPDK
网络
虚拟化
virtio
-
user
_
dpdk
virtio
...
virtio
做为半
虚拟化
的应用标准,在
DPDK
中最典型的应用其实就是
virtio
-
user
,在前面的vhost-
user
...
赞
踩
article
神经网络
之
反向
传播
_人工
神经网络
模型
中
的
反向
传播
误差
原理...
神经网络
的代价函数
神经网络
中
采用了与逻辑回归类似的代价函数,逻辑回归的代价函数如下图所示: 而
神经网络
中
因为加入了隐藏...
赞
踩
article
python
官方
文档
中文版
[15],
python
3.7
官方
文档
中文版
_
python
官方
文档
中文版
下载
...
这篇文章主要介绍了
python
官方
帮助
文档
中文版
,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收...
赞
踩
article
ros
基础知识...
ros
的定义:ROS是一个用于编写机器人软件的灵活框架,它集成了大量的工具、库、协议,提供了类似操作系统所提供的功能,包...
赞
踩
article
自己动手实现
一个
AI
搜索
引擎!_
python
ai
搜索
...
探索如何通过 Python 构建
一个
智能代理来自动执行
搜索
任务,利用 Open
AI
和 Google Search AP...
赞
踩
article
【
k8s
中
安装
rabbitmq
】
k8s
中
安装
rabbitmq
并搭建
镜像
集群
-
hostpath
版...
k8s
集群
中搭建
rabbitmq
集群
服务一般都会用到pvc,但是考虑到有些自建
k8s
环境下,搭建的共享存储可能会存在稳定...
赞
踩
article
SecureCRT
for
mac
(终端
SSH
工具
)v9.3.2版_
securecrt
支持
mac
版本...
Securecrt Mac是Mac os系统上一款强大易用且专业的终端
SSH
工具
,支持
SSH
(
SSH
1和
SSH
2)以及T...
赞
踩
article
Modelsim
Altera
下载_
modelsim
-
altera
下载...
modelsim
-
altera
安装。_
modelsim
-
altera
下载
modelsim
-
altera
下载 ...
赞
踩
article
工作
空间
、
功能
包、
节点
_
工作
空间
、
功能
包
和
节点
之间
的
关系...
本文介绍了ROS
的
工作
空间
构建与运行,包括如何创建
和
管理构建
工作
空间
,以及
功能
包
和
节点
的
创建。强调了
工作
空间
中不能有同名...
赞
踩
article
地理信息系统
复习摘要_水量
数据
的
采取主要包括几何
数据
与
属性
数据
的
采集
拓扑
数据
一般在已有
的
集合...
本文是对华一新《
地理信息系统
教程》
的
要点总结,涵盖了GIS
的
基本概念、空间
数据
结构、
数据
采集
与
质量控制、空间
数据
处理、空...
赞
踩
article
重磅消息 | 2023
年
最新
全栈
测试
开发
技能
实战
指南V2.0(第4期)...
第4期首日发文后,收到了一些学员的建议反馈,做了些许调整 ,最新官宣文以此篇为准!官宣,第四期,强势回归!1. 最近半
年
...
赞
踩
article
【
神经网络
基础知识
整理】
前向
传播
&&
反向
传播
_
神经网络
前向
传播
...
再对数据进行相应的处理,继续传下去,直到输出层;
反向
传播
是从后往前
传播
的,从output层到input层的方向:目标函数...
赞
踩
article
【2024校招】大疆笔试题 数字IC岗!!!_
模拟
adc
芯片
时钟
输入
匹配
链路
...
1、在
芯片
设计和计算机体系结构中,"outstanding" 是一个术语,通常用于描述尚未完成的、待处理的事物的数量。这...
赞
踩
article
virtio
与
vhost
_
net
介绍_
virtio
vhost
...
1.
virtio
基本构建模块
virtio
是一种I/O半虚拟化解决方案,是一套通用I/O设备虚拟化的程序,是对半虚拟化H...
赞
踩
article
OpenHarmony
3D
显示
框架详解_
mesa3d
...
由于 Mesa
3D
的 API 是和 OpenGL 相同,具体的 OpenGL 版本浏览 Mesa
3D
官方网站,我...
赞
踩
article
硬刚
恶劣
天气
!
Mamba
引领
目标
检测
新风向...
作者|小书童 编辑| 集智书童点击下方卡片,关注“自动驾驶之心”公众号戳我-> 领取自动驾驶近15个方向学习路线>>点击...
赞
踩
article
地理
数据
网
站_
地理
空间
数据
云官
网
...
1、
地理
空间
数据
云
网
站:http://www.gscloud.cn/可以免费下载dem
数据
2、矢量
数据
下载
网
站:http...
赞
踩
article
外键
造成
的
死锁
_
外键
关联
导致锁超时...
在建表
的
过程中有部门,岗位,员工三个表,首先岗位表post
的
外键
department
_
id对应部门departmen...
赞
踩
article
发送
jsonp
请求
(前后
端
如何实现)...
发送
jsonp
请求
(前后
端
如何实现)
发送
jsonp
请求
(前后
端
如何实现) ...
赞
踩
相关标签
人工智能
ai
副业
网络
python
操作系统
c/c++
搜索引擎
语言模型
chatgpt
kubernetes
rabbitmq
容器
docker
云原生
镜像集群
macos
ssh
运维
fpga开发
地理信息
神经网络
深度学习
前向传播