04 2011 档案
摘要:题目:用C++ 设计一个不能被继承的类。分析:这是Adobe 公司2007 年校园招聘的最新笔试题。这道题除了考察应聘者的C++ 基本功底外,还能考察反应能力,是一道很好的题目。在Java 中定义了关键字final ,被final 修饰的类不能被继承。但在C++ 中没有final 这个关键字,要实现这个要求还是需要花费一些精力。首先想到的是在C++ 中,子类的构造函数会自动调用父类的构造函数。同样,子类的析构函数也会自动调用父类的析构函数。要想一个类不能被继承,我们只要把它的构造函数和析构函数都定义为私有函数。那么当一个类试图从它那继承的时候,必然会由于试图调用构造函数、析构函数而导致编译错误
阅读全文
摘要:在C++编程语言中,还有很多比较高深的内容值得我们在学习和实践中不断的学习。在这篇文章中,我们将会为大家详细介绍有关C++ const变量的相关内容,希望能帮助大家轻松了解这方面知识。一、对于基本声明const int r=100;标准C++ const变量声明加初始化,因为默认内部连接所以必须被初始化,其作用域为此文件,编译器经过类型检查后直接用100在编译时替换。extend const int r=100;将const改为外部连接,作用于扩大至全局,编译时会分配内存,并且可以不进行初始化,仅仅作为声明,编译器认为在程序其他地方进行了定义。const int r[ ]={1,2,3,4};
阅读全文
摘要:1.把C++当成一门新的语言学习(和C没啥关系!真的。); 2.看《Thinking In C++》,不要看《C++变成死相》; 3.看《The C++ Programming Language》和《Inside The C++ Object Model》,不要因为他们很难而我们自己是初学者所以就不看; 4.不要被VC、BCB、BC、MC、TC等词汇所迷惑——他们都是集成开发环境,而我们要学的是一门语言; 5.不要放过任何一个看上去很简单的小编程问题——他们往往并不那么简单,或者可以引伸出很多知识点; 6.会用Visual C++,并不说明你会C++; 7.学class并不难,templat.
阅读全文
摘要:本节从以下几个方面来详细讲解代理模式:代理模式的核心思想。何时使用代理模式。Java中的应用-Java动态代理机制。12.3.1 代理模式的核心思想代理模式就是给某一个对象提供一个代理对象,并由代理对象控制对源对象的引用。就是一个人或者一个机构代替另一个人或者另一个机构去采取一些行动。代理模式中的代理者就好比中介机构,它提供了对被代理对象的一切事物。代理模式与适配器模式和装饰器模式相似,它们之间的区别是:适配器模式是将一个类A转换成另一个类B。装饰器模式是为一个类A增加新的功能,从而变成类B。代理模式是为一个类A转换操作类B。它们三者的限制条件层层递进,递进关系如图12-16所示。代理模式中的
阅读全文
摘要:在对已有的方法进行使用的时候需要对原有方法进行改进或者修改,这时候有两种改进选择:修改原有方法来适应现在的使用方式,或者使用一个"第三者"方法来调用原有的方法,并且对方法产生的结果进行一定的控制。第一种方法明显违背了"对扩展开放、对修改关闭"的开闭原则,而且在原有方法中进行修改可能使得原来类的功能变得模糊和多元化,而使用第二种方式可以将功能划分得更加清晰,有助于后面的维护。所以在一定程度上第二种方式是一个比较好的选择!这就是代理模式。如果按照使用目的来划分,代理有以下几种。远程(Remote)代理:为一个位于不同的地址空间的对象提供一个局域代表对象。这个
阅读全文
摘要:刚在51CTO.COM看到一篇讲观察者模式的文章,感觉上面的图示很生动,于是就转了过来,图示出自:http://lavasoft.blog.51cto.com/62575/201617图1:用户订阅气象信息的服务图2:用户得到气象信息图3:观察者模式类图图4:观察者信息展示类图
阅读全文
摘要:C++编程语言是一个应用广泛的计算机应用语言,它功能强大,在一定程度上大大提高了程序开发效率。C++单例模式也称为单件模式、单子模式。使用单例模式,保证一个类仅有一个实例,并提供一个访问它的全局访问点,该实例被所有程序模块共享。有很多地方需要这样的功能模块,如系统的日志输出等。单例模式有许多种实现方法,在C++中,甚至可以直接用一个全局变量做到这一点,但这样的代码显得很不优雅。定义一个单例类,使用类的私有静态指针变量指向类的唯一实例,并用一个公有静态方法获取该实例。如下面的类定义:class CSingleton:{ // 其它成员public: static CSingleton * Get
阅读全文
摘要:1. 单例的目的是什么? 这个应该很明显,保证一个类只有单一的实例,也就是说你无法通过New或CreateInstance来创建这个类的一个新实例。2. 单例的好处在哪里? 当一个对象在程序内部只能有一个实例的时候,它可以保证我们不会重复创建,而是始终指向同一个对象。3. 怎么用?单例模式的实现代码如下: namespace SinglePattern{ public class SingleClass { private static SingleClass instance; protected SingleClass(){} public static SingleClass GetIn
阅读全文
摘要:下面从以下几个方面来详细讲解外观模式:外观模式的核心思想。何时使用外观模式。Java中的应用。在真实的应用系统中,一个子系统可能由很多类组成。子系统的客户为了满足它们的需要,需要和子系统中的一些类进行交互。客户和子系统的类进行直接的交互会导致客户端对象和子系统之间高度耦合。如图12-18所示,X和Y对子系统内A、B和C都有调用,它们之间是高度耦合。外观模式为子系统提供了一个更高层次、更简单的接口,从而降低了子系统的复杂度和依赖,这使得子系统更易于使用和管理。外观是一个能为子系统和客户提供简单接口的类。当正确地应用外观时,客户不再直接与子系统中的类交互,而是与外观交互。外观承担与子系统中类交互的
阅读全文
摘要:在复杂的商业社会,你想创业,不懂经济、不懂商业、不懂人情世故、不懂法律边沿,你只有勇气、只有梦想、只有天真,那么也就只有一场空。这20部电影都是商学院学生在学习商科时被要求必须看的影片,其中包括哈佛商学院一直首推的《华尔街》,还有沃顿商学院排第一位的《颠倒乾坤》,斯坦福要求商科学生必看的《锅炉房》。看完之后,你会对商业运行的本质和规则有更深入的了解,对你的职场生涯亦会有不小的帮助。 PS:基本上都是一些比较早期的,也有一些是比较冷门的,但都是职场电影经典之作 最近的《华尔街:金钱永不眠》《社交网络》也是此类职场经典,新作,大家自己品味就好,这里就不列出了。 1.《华尔街》(Wall Stree
阅读全文
摘要:具体的社保构成比例为: 养老保险:单位每个月为你缴纳21%,你自己缴纳8%; 医疗保险:单位每个月为你缴纳9%,你自己缴纳2%外加10块钱的大病统筹大病统筹主要管住院这块); 失业保险:单位每个月为你缴纳2%,你自己缴纳1%; 工伤保险:单位每个月为你缴纳0.5%,你自己一分钱也不要缴; 生育保险:单位每个月为你缴纳0.8%,你自己一分钱也不要缴; 住房公积金:单位每个月为你缴纳8%,你自己缴纳8%以上,这么算下来, 单位每个月为你缴纳的社保比例应该是21%+9%+2%+0.5%+0.8%+8%=41.3% 你自己每个月为你缴纳的社保比例应该是8%+2%+10块+1%+8%=19%+10块 暂
阅读全文
摘要:假设你的月收入只有2000元,你也可以过得很好。我帮你把钱分成五份。第一份600元,第二份400元,第三份300元,第四份200元,第五份500元。 第一份,用来做生活费。这么少的生活费,每天只能够分到十几元。早餐一份煮米丝,一个鸡蛋,一杯豆浆。中餐一份快餐,一个水果。晚餐自己开个小灶,煮点饭,加俩菜,睡前一杯奶。这样一个月的伙食大概是500-600。不过,如果你还年轻,身体暂时还没有太多问题,这样的食谱,够你数年内不会有健康问题。 第二份,用来交朋友,扩大你的人际圈。这就宽裕了。你的电话费可以用掉100元。每个月可以请客两次,每次150元。请谁呢?记住,请比你有思想的人,比你更有钱的人,和.
阅读全文
摘要:public class DateTime{ public DateTime() { } /** * 取年日期时间 * @return String 返回 yyyy-MM-dd HH:mm:ss */ public static String getdate() { SimpleDateFormat formatter_f = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date currentTime_f = new Date(); //得到当前系统时间 String new_date_f = formatter_f.form
阅读全文
摘要:import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Scanner;public class MainClass{ public static void method1() { //使用Scanner Scanner scanner=new Scanner(System.in); System.out.print("Please input a number:"); int num=scanner.nextInt(
阅读全文
摘要:刚学Java,搞不懂Pane和Panel的区别在哪里,看来以英语为母语的人群学编程还是比较有优势的。百度一下,找到了一篇博文对二者有明确的阐述,可惜拒接转载,也许博主不崇尚开源:http://simon.blog.51cto.com/80/122148这里大致说下我的理解。Pane指的是一个独立窗口中的窗格,比如.CHM帮助文档中左边一个索引窗格,右边一个正文窗格;再比如Eclipse左边一个包资源管理器窗格,中间一个编辑器窗格等等。Panel指的是一个面板,用它来对一些控件进行分组,就像组合框控件,即Visual Studio里面用的Group Box Control;而在一些软件界面里面也
阅读全文
摘要:点击“更改已连接的源代码”,然后找到安装jdk的目录,C:\Program Files\Java\jdk1.6.0_22\src.zipsrc.zip就是是jdk中存放源码的包,确定就可以看到源码了。
阅读全文
摘要:这几天开始自学Java,搭建Eclipse作为开发环境,发现实在太智能了,貌似对学习无益。于是搜了下,另外搭建了EditPlus上的简易Java开发环境,确实比较适合学习,不足之处是没法配置比较方便的运行Java Applet的用户工具,因为AppletViewer只认HTML文件,不认.class文件。无赖之下只得自己动手写个C语言小程序,通过它自动生成Java Applet对应的HTML文件,然后再使用AppletViewer来运行之。这个小程序我已经上传到115网盘上了,有需要的朋友可以下载使用。进入下载页面:JavaAppletHTML.zip使用方法很简单,解压缩后取出里面的Java
阅读全文
摘要:可以有以下步骤来编译运行Java applet:1.假设我们的程序叫TestApplet.java,首先在命令行中切换到程序当前所在的目录。2.我们需要编译生成.class文件。命令行中输入:javac TestApplet.java,我们发现有提示:”TestApplet.java 使用或覆盖了已过时的API...“,不过.class文件生成了。3.我们需要写名为TestApplet.html文件。新建TestApplet.txt文件,其内容为(当然自己可以加入其它内容):<HTML> <HEAD> <TITLE>Applet Test</TITLE
阅读全文
摘要:很多java的初学者都遇到这个问题 AppletViewer是jdk工具,位于jdk安装路径/bin中 使用方法与java.exe一样 若出现以下提示 警告:不能读取 AppletViewer 的属性文件: C:\Documents and Settings\AGUI\.hotjava\properties 使用默认值。 进行读取时出现 I/O 异常: C:\java\HelloApplet (系统找不到指定的文件。) 则可以参考如下步骤 1. 在开始|运行中输入policytool.exe(若不能运行,说明java环境变量设置有问题) 2. 单击“添加规则项目”,进入规则项目页面 3. 单击
阅读全文
摘要:Eclipse中安装中文插件后,按Ctrl键+鼠标单击查看源码时出现:Unmatched braces in the pattern 解决方法如下: 1.找到Eclipse的安装目录,找到目录中的eclipse.ini文件,打开在文件的最后面加上:-Duser.language=en 2.重启Eclipse,重新附加JDK源码 3.删除eclipse.ini文件中最后加上的 -Duser.language=en 4.重启Eclipse,这时Eclipse恢复到开始时的中中文界面,再查看源码,一切正常
阅读全文
摘要:前段时间一直用eclipse,用某个老师的话说:爽!确实,用eclipse写代码简直是种享受。即时编译让你可以根据前面的小红叉很容易找到bug所在,当然这种bug不是逻辑的,而是普通的语法错误。我还是初学者,没用到debug。但是我怎么总是犯低级的错误呢?……某天听了一段视频教程,突然之间豁然开朗。老师说初学Java不要用大型的IDE!不然出了小问题都搞不定了!我亲身经历过那种小错折磨人……但是束手无策,只能去google。而且用eclipse像吸毒一样,我把Content Assit设置成为Tab键,那个爽啊!比如想打import,你只要输入前几个字母加上tab,import马上出来。对于比
阅读全文
摘要:windows xp下配置JDK环境变量:1.安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为D:\java\jdk1.5.0_08; 2.安装完成后,右击“我的电脑”,点击“属性”; 3.选择“高级”选项卡,点击“环境变量”; 4.在“系统变量”中,设置3项属性,JAVA_HOME,PATH,CLASSPATH(大小写无所谓),若已存在则点击“编辑”,不存在则点击“新建”; 5.JAVA_HOME指明JDK安装路径,就是刚才安装时所选择的路径D:\java\jdk1.5.0_08,此路径下包括lib,bin,jre等文件夹(此变量最好设置,因为以后运行tomcat,ec
阅读全文
摘要:Flashbug是一款基于FireBug的火狐插件,这给利用Flex SDK开发程序的人带来了便利。以前只能用FDB命令行来调试,现在有了Flashbug就更直观了。安装Flashbug也非常方便,不过要先给火狐安装FireBug插件,还得给火狐安装Debug版本的Flash播放器。在实际操作中还要注意两点:一、在编译生成swf文件时,要输出成debug版本的文件,如下命令:D:\flex4\bin\mxmlc.exe -debug=true --strict=true main.mxml注意里面-debug=true,加了这一段就能输出debug版本的swf文件。二、要把生成的swf文件嵌入
阅读全文
摘要:一、复制舞台上的影片剪方法1——反射方法:var ClassRef:Class = getDefinitionByName(getQualifiedClassName(t_mc)) as Class;var clone_mc:DisplayObject = new ClassRef();addChild(clone_mc);方法2——构造器方法:var ClassRef:Class = t_mc.constructor;var clone_mc:MovieClip = new ClassRef();addChild(clone_mc);方法3——编译器自动生成类方法:此方法是方法1的变种,它比
阅读全文
摘要:先来看下面的代码:var initialObj:Object=new Object();initialObj.name="名字";var afterObj:Object=initialObj;afterObj.name="改名了";trace("initialObj的名字:"+initialObj.name);//输出“改名了”trace("afterObj的名字:"+afterObj.name);//输出“改名了”如果是新手,可能你会紧张的发现initialObj的名字也变成了"改名了",但并
阅读全文
摘要:晚上回宿舍,将Flex项目更新到SVN版本库中最新版,使用Flash Builder 4 调试,结果一直卡在“正在等待Adobe Flash Player连接调试器 57%”。网上查了下,说是Flash Player Debugger的问题,重新安装了最新版,仍然不顶用。再搜,有个可以查看浏览器上是否安装了Debug版本的Flash Player,这个网站是http://flashplayerversion.com/。看了下,确实是Debug版的呀,奇怪。再查,原来是默认浏览器——360安全浏览器,更新Flash Player时装了非Debugger版本,而我调式的时候都是使用360安全浏览器
阅读全文
摘要:当BulkLoader把所有的资源都加载完成后,可以使用以下的代码来获取SWF文件中的类,这里假设SWF文件名为index.swf,要获取的类的名称为Boy。为了方便实例化SWF文件中的类,可以定义一个方法。/** 从SWF文件中获取类实例化对象 ----------------------------------------------------------------------*/public static function getObjectFromSWF(clsName:String, swfName:String, bulkLoader:BulkLoader ):Object{
阅读全文
摘要:今天我们来看看AS3中新的XML处理方法:E4X,直到现在,ECMA脚本语言规范(ECMA-262)——AscriptScript 3.0的核心基础,并没有提供任何的XML数据处理类或方法。AcriontScript之前的版本(从Flash 5中的ActionScript开始)有一些处理XML数据的类和方法,但是它们并不是基于ECMAScript标准的。新的ECMA脚本语言规范第4版草稿中定义了一系列新的处理XML数据的类和方法。这些类和方法的集合并命名为E4X("ECMAScript for XML"),ActionScript 3.0包括如下新的E4X类: XML、XM
阅读全文
摘要:照我的理解,函数重载(Function Override)从来不是面向对象语言的核心。因此,ActionScript语言是否支持函数重载不应该成为人们批评或质疑它的原因之一,是否实现函数重载完全取决于你的应用。 曾经遇到一个问题,Java语言的某个类接口要映射要ActionScript类,由于该类的接口有函数重载的现象,导致ActionScript无法声明相应的接口。例如: //Java类interface PetStoreFacade{ Account getAccount(String username); Account getAccount(String username, Strin
阅读全文
摘要:最近开始用Flex Builder,开发人员嘛,还是用这个舒服。Flex框架的功能很强大,做RIA应用没的说,但对于开发游戏用处却不是很大,而且生成的swf文件会多出200KB左右。所以,我决定只建立ActionScript工程。然后问题就来了...Flash中有一个类叫fl.transitions.Tween,用来做一些缩放或淡入淡出的特效很方便。但是此类在Flex中无法直接使用。Google后看到有人说在Flex中可以用mx.effects.Tween这个类来代替,但是这个类也只能在Flex的工程中使用。难不成flash中那么多方便的类都无法使用了么?难不成要自己写特效么?再找!最终awf
阅读全文
摘要:选择菜单 帮助–> 安装新软件在使用里键入地址:http://subclipse.tigris.org/update_1.6.x按回车键在Subclipse栏里选择带有Required标签的项目.一共三个然后下一步.完成下载完后重启Flash Builder4选择菜单 窗口 –> 其它视图 –> SVN即可以看到SVN插件功能.
阅读全文
摘要:声明一下。希望大家经济允许的话,积极支持正版。 先插入一个下载 Adobe AIR ,它们关系很密切 官网下载地址:http://get.adobe.com/cn/air/?promoid=BTLOA注册 Flash Builder 4 的方法只需两步:1. 注册码我这里提供几个个Flash Builder 4的注册码: 1424-4884-4630-8952-4819-85201424-4118-1138-0912-4001-72221424-4012-2754-1802-2619-89281424-4766-4350-7925-0705-3050并且提供一个注册机下载地址:http://d
阅读全文
摘要:需要使用到一个类:IFrame,这个类所包含的项目可到Google下载:http://code.google.com/p/flex-iframe/方法一:在MXML中编辑注意:需要把下载下来的flex-iframe压缩包中的.swc文件拷贝到Flex项目的libs目录中,否则会报错。<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:flexiframe="http://code.google.com/p/flex-iframe/"> <flexiframe:I
阅读全文
摘要:{a:["啊","阿","吖","嗄","腌","锕"],ai:["埃","挨","哎","唉","哀","皑","癌","蔼","矮","艾","碍","爱","隘","捱","嗳&quo
阅读全文
摘要:当网络速度较慢时,如果在下载过程中界面没有任何的提示或变化,用户会感到烦躁,甚至抱怨开发商,这不是我们所希望的。进度条是很好的转移注意力的方式,它让用户感觉到程序在正常运转,可以耐心地等下去。 Preloader就是这样一个类,它负责监听Application、RSL和模块的下载和初始化进程的状态,包括对下载过程的监听,并且根据下载的状态生成相应的初始化进程事件,包括: FlexEvent.INIT_PROGRESS FlexEvent.INIT_COMPLETE ProgressEvent.PROGRESS Event.COMPLETE Preloader虽然发布初始化进程事件,但是并不直接
阅读全文
摘要:以下是一个从远程URL导入XML数据的例子: var myXML:XML = new XML();var XML_URL:String = "http://www.example.com/Sample3.xml"; //创建URLRequest。var myXMLURL:URLRequest = new URLRequest(XML_URL);//使用URLLoader导入数据。var myLoader:URLLoader = new URLLoader(myXMLURL); //添加事件监听器,以在XML数据导入完成后处理XML数据。 myLoader.addEventL
阅读全文
摘要:如下示例代码,其中creationComplete为创建完成事件,它指定一个函数,当flex的Application在运行时创建完成,调用该函数。这个函数用来做为程序的入口点,有点像C\C++程序的main()函数,或是Windows程序的WinMain()函数。<?xml version="1.0" encoding="utf-8"?><s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.co
阅读全文
摘要:BulkLoader是一个老外写的loader类。它能够对多个不同的外部文件进行队列下载,下载时能够获取单个对象的下载百分比和所有对象加起来的总体百分比~而且,能够对下载列表的优先级进行操作,还能够remove单个对象或者一次remove所有对象(呵呵~可以偷懒了:))十分方便!对象加载失败时还能够设定重试次数,如果超过重试次数,就放弃load这个对象。下面这个是BulkLoader自带的一个例子。package { import br.com.stimuli.loading.BulkLoader; import br.com.stimuli.loading.BulkProgressEvent
阅读全文