再理解 as3.0接口
As3.0 接口的理解与运用
1.把接口当作“类”来理解。你easy接受她。 我们看她的标准结构:
package 包路径{
public interface 接口名称{
function 方法名(參数:參数类型):返回类型;
static function 方法名(參数:參数类型):返回类型;
function get 方法名():返回类型;
function set 方法名(參数:參数类型):void; } }
特记:方法没有大括号{},就是仅仅是声明方法,而没有实体。
有名无实。
2. 接口是为类准备的“组件”,没有类。接口什么用处也没有。 类是实现接口方法的唯一途径。
3. 类“使用”接口时,当作“继承”来理解,虽然与类的继承不一样。 在继承时,“必须”“全然”“覆盖”接口中的“方法”和“属性”。
让接口的方法有实体。名符事实上了。才干顺理成章地干活!
4. 接口能够被类“多继承”。反言之:一个类能够实现多个接口。这正是接口的长处。
老祖宗多,家产兴盛、財源滚滚。
接口一: packageLir{
publicinterface IALL{
function clone1():String;
}
}
接口二: packageLir{
publicinterface IDLL{
function clone1():String;
}
}
使用多接口的类: packageLir{
publicclass AD implements IALL,IDLL{
public function clone1():String {
return "clone1";
}
public function clone2():String {
return "clone2";
}
} }
应用:
package com{
importflash.display.Sprite;
public class testclass extends Sprite {
public function testclass():void {
var ftt1:IALL = new AD();//看这行
var ftt2:ICLL = new AD();//再看这行
trace(ftt1.clone1()); trace(ftt2.clone2());
} } }
这是个简单的应用。所以还没有显现出优势来,你的心理或许觉得:还不如用类简单呢!假设在大型游戏制作中。程序猿的体验可就不同了。
5.接口是自己定义数据类型。
一个类实现了一个接口的话。除了它自身的类型外。还多一个身份:接口定义的类型。这样一来。好多本不相关的类就可能通过一个接口相关起来。就像很多孤儿。被一个伟大的父亲收养了,孤儿有了共同的父亲。就能够交流交往、相亲相爱了。
样例:
全部“继承”了IAll接口的“子类”如myTxt、myMc、myShape„„都能够这样声明: varmytxt:IAll=new myTxt()
varmymc:IAll=new myMc()
varmyshape:IAll=new myShape() „„
当我们要从舞台上移除全部的属于IAll的可视化元件时,
仅仅须要 If(实例 is IAll){this.removeChild(实例)}
再理解 as3.0接口的更多相关文章
- as3.0 interface接口使用方法
[转]as3.0 interface接口使用方法 AS在2.0的时候就支持接口了 接口能够让你的程序更具扩展性和灵活性,打个例如 比方你定义了一个方法 代码: public function aMet ...
- Java&&As3.0 中的final 关键字
Java和AS3.0关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类.非抽象类成员方法和变量.你可能出于两种理解而需要阻止改变:设计或效率. 可以修饰的对象: fin ...
- “AS3.0高级动画编程”学习:第一章高级碰撞检测
AdvancED ActionScript 3.0 Animation 是Keith Peters大师继"Make Things Move"之后的又一力作,网上已经有中文翻译版本了 ...
- “AS3.0高级动画编程”学习:第二章转向行为(上)
因为这一章的内容基本上都是涉及向量的,先来一个2D向量类:Vector2D.as (再次强烈建议不熟悉向量运算的童鞋,先回去恶补一下高等数学-07章空间解释几何与向量代数.pdf) 原作者:菩提树下的 ...
- “AS3.0高级动画编程”学习:第三章等角投影(上)
什么是等角投影(isometric)? 原作者:菩提树下的杨过出处:http://yjmyzz.cnblogs.com 刚接触这个概念时,我也很茫然,百度+google了N天后,找到了一些文章: [转 ...
- As3.0 类的【枚举】
As3.0 类的枚举 “枚举”是您创建的一些自定义数据类型,用于封装一小组值.ActionScript 3.0 并不支持具体的枚举工具,这与 C++ 使用 enum 关键字或 Java 使用 En ...
- 程序员的自我救赎---3.1:理解Oauth2.0
<前言> (一) Winner2.0 框架基础分析 (二)PLSQL报表系统 (三)SSO单点登录 (四) 短信中心与消息中心 (五)钱包系统 (六)GPU支付中心 (七)权限系统 (八) ...
- “AS3.0高级动画编程”学习:第二章转向行为(下)
在上一篇里,我们学习了“自主角色”的一些基本行为:寻找(seek).避开(flee).到达(arrive).追捕(pursue).躲避(evade).漫游(wander).这一篇将继续学习其它更复杂, ...
- “AS3.0高级动画编程”学习:第四章 寻路(AStar/A星/A*)算法 (下)
在前一部分的最后,我们给出了一个寻路的示例,在大多数情况下,运行还算良好,但是有一个小问题,如下图: 很明显,障碍物已经把路堵死了,但是小球仍然穿过对角线跑了出来! 问题在哪里:我们先回顾一下ASta ...
随机推荐
- windows下如何添加、删除和修改静态路由
1.添加一条路由表 route add 192.168.100.0 mask 255.255.255.248 192.168.1.1 metric 3 if 2 1 2 添加一条路由记录,所有到192 ...
- DEDECMS首页和列表页调用单个图片集里的多张图片
/**DEDECMS首页和列表页调用单个图片集里的多张图片 function Getimg($aid,$imgwith=110,$imgheight=110,$num=0) { global $dsq ...
- Spring Bean Life Cycle Methods – InitializingBean, DisposableBean, @PostConstruct, @PreDestroy and *Aware interfaces
Spring Beans are the most important part of any Spring application. Spring ApplicationContext is res ...
- ssh免密码登录的注意事项
centos配置完免密码登录(注意修改配置文件,/etc/ssh/sshd_config),合并完公钥后,有的时候还得需要输入密码.这时候应该检查一下authorized_keys的权限问题.本机的正 ...
- 通过Linux定时任务实现定时轮询数据库及发送Http请求
通过Linux定时任务实现定时轮询数据库及发送Http请求 概述 有时需要临时增加一个定时任务(需要根据数据库查询结果然后发送HTTP请求),如果在项目中额外增加(Java+Spring+Quartz ...
- 转: Servlet-jsp从入门到精通 1~5
评注: 来自简书,内容很简要. http://www.jianshu.com/p/d718a5f4a850 (一) http://www.jianshu.com/p/06efc32c10cf (二 ...
- [PWA] Cache Third Party Resources from a CDN in a React PWA
Our service worker caches our static assets - but only those assets that are included in our React A ...
- JMeter接口测试中文乱码问题总结
在测试过程中遇到了请求json串中文乱码,所以查看了这篇文章,将字符集修改后,乱码问题已经处理. 转载http://blog.csdn.net/qing_java/article/details/69 ...
- ubuntu 12.04上安装wn725n无线网卡驱动
系统版本:$uname -a Linux yuliang-Veriton-M670G 3.11.0-17-generic #31~precise1-Ubuntu SMP Tue Feb 4 21:25 ...
- MySQL架构组成之物理文件组成
一.日志文件 1.错误日志:Error Log 内容:MyQL Server 执行过程中全部较为严重的警告和错误信息,以及MySQL Server 每次启动和关闭的具体信息. 路径:默认存放位置在 ...