[AS3.0]一步一步学ActionScript 3.0(十一)

CIC-IDS数据集特征介绍 ###1、简介 通信安全机构(CSE)与加拿大网络安全研究所(CIC)合作项目,该项目对自1998年以来现有的11个数据集的评估表明,大多数数据集(比如经典的KDDCUP99,NSLKDD等)已经过时且不可靠。其中一些数据集缺乏流量多样性和容量,一些数据集没有涵盖各种已知的攻击,而另一些数据集将数据包有效载荷数据匿名化,这不能反映当前的趋势。有些还缺少特征集和元数据。 CIC-IDS-2017数据集包含良性和最新的常见攻击,类似真实世界数据(PCAPs)。 它的数据采集截至2017... 阅读详情

在使用其实语言中,比如C++,JAVA ,会用到一些设计模式,使程序结构更加合理化,今天我们来看一下设计模式中最基本的一种——单例模式。

讲单例模式之前我们先看一个普通的例子,先建一个普通的类:

package net.smilecn{
    
    
public class MySubClass{
        
        
public var num:Number = 0;
        
        
public function MySubClass(){
        }
    }
}

下面再建两个类,这两个类中都生成MySubClass的实例

package net.smilecn{
    
    
import net.smilecn.MySubClass
    
    
public class OneClass{
        
        
private var mySubClass:MySubClass= new MySubClass();
        
        
public function OneClass(){
            mySubClass.num 
= 5;
        }
    
    }
    
}

 

package net.smilecn{
    
    
import net.smilecn.MySubClass
    
    
public class TwoClass{
        
        
private var mySubClass:MySubClass=new MySubClass();;
        
        
public function TwoClass(){
            trace(mySubClass.num)
//结果为0
        }
    
    }
    
}

在OneClass和TwoClass这两个类中都有MySubClass的实例,如果我们改变其中一个实例,其它的是不会更改的,因为它们不是同一个实例,所以第一个把num改为5,第二个里面仍是0,它们间没有联系。

单例模式的意思是不管怎么样都只产生一个实例,我们现在来修改MySubClass的代码:

package net.smilecn{
    
    
public class MySubClass{
        
        
private static var mySubClass : MySubClass;
        
        
public var num:Number = 0;
        
        
public function MySubClass(){
            
if ( MySubClass.mySubClass != null )
                
throw new Error( "只能产生一个实例" );
        }
        
        
public static function getInstance():MySubClass{
            
if ( mySubClass == null )
                mySubClass 
= new MySubClass();

            
return mySubClass;
        }
    }
}

在这里我们加了一个getInstance的方法,一个mySubClass 的静态变量,getInstance也是静态的,静态的作用在于我们可以用 类名.方法名 来访问这个方法,比如:MySubClass.getInstance,接下来在修改另个两个类

package net.smilecn{
    
    
import net.smilecn.MySubClass
    
    
public class OneClass{
        
        
private var mySubClass:MySubClass=MySubClass.getInstance();
        
        
public function OneClass(){
            mySubClass.num 
= 5;
        }
    
    }
    
}

 

package net.smilecn{
    
    
import net.smilecn.MySubClass
    
    
public class TwoClass{
        
        
private var mySubClass:MySubClass=MySubClass.getInstance();
        
        
public function TwoClass(){
            trace(mySubClass.num)
//结果为5
        }
    
    }
    
}

我们可以看到,区别在于把new MySubClass()换成了MySubClass.getInstance(),变成单例模式后就不能用new的方法来产生这个实例了,要用getInstance方法来产生,用new的方法就会报一个错误。

单例模式的好处在于,不管在多少个类中产生实例,所以的都是共用一个,假设这个单例的类中存的是一个共享的数据,那么其它类中都可以使用这些数据了。

下节我们介绍MVC思想去架构程序,下节继续。

(本教程如需转载请注明出处!)


嵌入式Linux网络调试踩坑记:YT8531/YT8521 PHY驱动移植与设备树配置实战 本文深入解析嵌入式Linux系统中YT8531/YT8521 PHY驱动移植与设备树配置的实战经验。从网络不通的常见现象入手,详细介绍了驱动移植关键点、设备树配置详解及常见问题排查技巧,帮助开发者快速解决RGMII接口调试难题,提升嵌入式网络开发效率。 阅读详情

相关推荐

设计模式之单例模式(AS3实现)

ActionScript3实现的单例模式

as3设计模式之单例模式

一,什么是单例模式。 单例设计模式用于限制类的实例化次数,并提供对该实例的全局访问。在单例模式中,类只能实例化一次。 二,什么情况下需要用到单例模式。 当你需要确保类只存在一个实例,并且如何让该实例支持全局访问性。 三,单例模式具备哪些因素。 1、私有静态属性,用于存取类的唯一实例。 2、公共静态方法,用于提供对该唯一实例的存取访问,如果实例未创建,则创建该实例。 3、用于限...

iteye_6994的博客 306

feflow教程(1).rar

水文地质模拟软件feflow教

Flash AS3.0菜鸟教程代码的位置

早期版本的ActionScript代码可以写在帧、按钮、影片剪辑、as文件等位置,而Flash AS3.0代码的位置发生了重大的改变,只能写在帧及as文件中。 虽然Flash AS3.0支持把代码写在时间轴中,但在实际应用中,如果把很多的代码放在时间轴中,会导致代码很难管理。或者说,用类来组织大量的代码更为合适,因为类代码都是放在as文件中的。 除了把代码放在时间轴上,还可以把代码放在...

hgfghe7 290

AS3.0中单例模式的实现

实现单例模式(Singleton Pattern)的思路是:一个类能返回对象一个引用(永远是同一个)和一个获得该实例的方法(必须是静态方法,通常使用getInstance这个名称);调用这个方法时,如果类持有的引用不为空就返回这个引用,如果类保持的引用为空就创建该类的实例并将实例的引用赋予该类保持的引用;同时将该类的构造函数定义为私有方法(AS3.0不支持),这样其他处的代码就无法通过调用该类的构...

weixin_33806300的博客 168

as3.0纯新手跟着

首先说明下哦,我这边会直接从Iteye我的个人blog转过来,我会持续更新,可能不按照篇章来更新,因为截图,修改位置确实比word里难用很多,但是一直很想写篇能让一个纯新手也能看懂,并且跟着能会用as3.0编程的相关技术及工具,目前的主要方向为--游戏类编程。期间也可能会有发表一些关于游戏设计方面的,敬请理解。  as3习从头开始()   as3习从头开始()-事件机制

netinnet的专栏 672

[AS3.0]一步一步ActionScript 3.0(十一) 单例模式

本文转自arrowyoung的博客 在使用其实语言中,比如C++,JAVA ,会用到一些设计模式,使程序结构更加合理化,今天我们来看一下设计模式中最基本的一种——单例模式。讲单例模式之前我们先看一个普通的例子,先建一个普通的类: package net.smilecn{ public class MySubClass{

阿衡·加油! 2120

[AS3.0]一步一步ActionScript 3.0()

        一直想写个关于AS3.0教程,但公司太忙都没时间写,最近看到群里有些朋友对3.0还不是很了解,所以从现在开始抽时间写点教程,从基本的东西开始.        很多人还习惯用2.0去写一些东西,我已经有半年多没用2.0,很多2.0的习惯不能带到3.0中来,比如说在MC或BUTTON上去写代码,当然3.0里面还是可以在帧上写代码(这里用到的版本是FLASH CS3,FLEX对于初

3729

[AS3.0]一步一步ActionScript 3.0()

as3.0中我们用的最多的可能就是“事件” ,我们会侦听各种事件。当我们点击一个按钮时,在2.0中我们可能会用到这样的语句:_btn.onPress = function(){};当然后我们也可以用addEventListener来侦听一个点击事件。在3.0中我们一律用addEventListener这种加侦听的方式来完成。_btn.addEventListener(

3014

[AS3.0]一步一步ActionScript 3.0()

前两节中,我们讲到了侦听,类与类之前也是可以侦听的,类与类之前的侦听就达到了类和类之前发消息的功能,这其实就是AS3.0中的消息机制。 我们先一个叫做MyClass的类:package net.smilecn{        import flash.display.Sprite;    import flash.events.Event;    import flash.events

1834

ActionScript 3.0初体验,与AS 2.0的一些区别(转)

初识ActionScript 3.0     AS3.0已有一段时间了,想把自已对AS3的一些认识和大家分享一下。主要想说说AS3AS2的不同之处,没有什么逻辑性,想到什么就写点什么,因此,它不适合AS高手们阅读。本文将力求用最直白的语言,尽量不用那些艰涩难懂的名词和术语。                               一 在什么地方写代码     失望,以为要说点啥,原来是这么小儿科的问题。没办法,我说过了,本文不适合AS高手阅读的。为了更好地理解,我们还是用例子来说明。现在,就让我们

1144

探秘AS3JS:将ActionScript 3.0带入JavaScript的世界

探秘AS3JS:将ActionScript 3.0带入JavaScript的世界 更新通知:由于关注度较低,该项目已不再维护。但其思想和成果仍值得回顾与习。 在线体验:想在浏览器中直接体验AS3JS吗?试试这个实时示例! 项目简介 AS3JS是一个基于Node.js的工具,它将ActionScript 3.0代码转换为纯JavaScript。灵感来源于ImportJS,它允许你利用AS3...

gitblog_00099的博客 707

探索AS3JS:将ActionScript 3.0转换为JavaScript的强大工具

探索AS3JS:将ActionScript 3.0转换为JavaScript的强大工具 项目介绍 AS3JS是一个基于Node.js的工具,旨在将ActionScript 3.0代码转换为纯JavaScript代码。这一工具不仅支持多种IDE的智能代码补全功能,如FlashDevelop和FDT,还允许开发者使用熟悉的AS3包结构编写代码,并自动转换为独立的JavaScript文件。AS3JS的核...

gitblog_00134的博客 819

ActionScript 3.0 语法

1.        在Flash Builder 4 中的角本文件声明:                       //角本内容         ]]>2.        常量和变量在ActionScript 3.0中使用常量和变量和其他的编程开发语言一样,没什么太大的区别,作用点都是相同的。简单理解就是常量就是值不会改变的量,变量则相反。  在AS3.0中常量也可以分为两种:顶级常量和用户自定

技术记录 2701

AS3单例模式(Singleton)

单例模式的优点: 1.一个静态实例,把共享的属性方法能在任何一个程序集调用,信息有效的实现操作。(数据以一个静态实例的模式贯通全局) 2.有效降低大模块之间的耦合度。 (注意:缺点就是耗费内存资源。单例不能滥用) (注意:单例模式,顾名思义。只有一个实例的设计模式。) 单利模式的由来: 我们只要仔细地想想看,全局变量确实可以提供一个全局访问点,但是它不能防止别人

学习记录 1285

AS3实现单例模式举例

在面向对象的编程中,有时候会要求一个类有且仅存在一个实例,并提供一个全局的访问方法。所以我们在设计这样的类的时候,就需要思考如何避开构造函数,提供 一种机制来实现单例(单一实例)。这就是单例模式。另因为在AS3中无法操作线程,因此我们无需考虑多线程情况下的单例。 单例模式的几种AS3实现 在AS3中有多种方法可以实现Singleton模式。 方法1: package { pub

awfskoo的专栏 6119

AS3-单例模式

讲单例模式之前我们先看一个普通的例子,先建一个普通的类: package net.smilecn{ public class MySubClass{ public var num:Number = 0; public function MySubClass(){ } } } 下面再建两个类

wjh1989的专栏 870

AS3设计模式Singleton Pattern (单例模式)

今天看到了 N神AS研究所的文章【AS3设计模式】 Singleton Pattern (单例模式)http://www.nshen.net/blog/article.asp?id=511; 感觉非常有用,使用了一下,主要在存数据的上面还有些不明白,通过研究,自己找到了一中方法. 改写了其中 singleton 类:_____________start_______________ packag...

hereson 292

Java 单例模式

单例模式一般分为饿汉模式和懒汉模式。

AS_MSDN的专栏 709

[AS3.0]一步一步ActionScript 3.0(十六)

 今天我们来习如果使用FLASH与其它语言进行交互,为什么要和其它语言交互呢,因为有些功能在FLASH里是无法完成的,只有通过别的语言来完成,比如读写数据库,像我们想做一些留言本之类的程序的时候就会用到;flash与其它语言交互其实有几种方法,我们可以跟网页交互,比如ASP,PHP,JSP,ASP.NET,这就相当于是HTTP的方式,我们还可以用webServices,但webServices有

3281
上一篇: [AS3.0]一步一步学ActionScript 3.0(十)
下一篇: [AS3.0]一步一步学ActionScript 3.0(十二)
arrowyoung
博客等级 码龄23年 23粉丝 50原创
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值