- 浏览: 18981 次
- 性别:
- 来自: 北京
最新评论
文章列表
闭包的两个特点:
1、作为一个函数变量的一个引用 - 当函数返回时,其处于激活状态。
2、一个闭包就是当一个函数返回时,一个没有释放资源的栈区。
其实上面两点可以合成一点,就是闭包函数返回时,该函数内部变量处于激活状态,函数所在栈区依然保留.
我们所熟知的主流语言,像C,java等,在函数内部只要执行了return,函数就会返回结果,然后内存中删除该函数所在的区域.生命周期也就停止了.一般的js函数也是这样.
但是有闭包特性的js函数有点特殊.
就例子来说:
function a(){
var i=0;
function b(){
alert(++i);
}
ret ...
一、类型定义
什么叫做类型?简单地说,类型就是把内存中的一个二进制序列赋予某种意义。比如,二进制序列0100 0000 0111 0000 0001 0101 0100 1011 1100 0110 1010 0111 1110 1111 1001 1110如果看作是64位无符号整数类型就是4643234631018606494 而按照IEEE 754规定的浮点数二进制表示规则(见附1)双精度浮点类型则是257.331。
变量类型
大部分计算机语言使用变量来存储和表示数据,一些语言会给变量规定一个类型,在整个程序中(不论是编译时还是运行时),这个类型都不能被改变。与此相对,JavaScript和 ...
如果你已经了解JUnit或者PyUnit, 那么你应该不会花超过10分钟学会使用JSUnit, JSUnit是用来对Javascript代码做单元测试的测试框架,是JS版本的JUnit。
通过下面5个简单的步骤你可以很快学会使用JSUnit:
(1) 下载JSUnit的压缩包然后解 ...
背景:
某日临近下班,一个同事欲任何类中获取项目绝对路径,不通过Request方式获取,可是始终获取不到预想的路径。于是晚上回家google了一下,误以为是System.getProperty("java.class.path")-未实际进行测试,早上来和同事沟通,提出了使用这个内置方法,结果人家早已验证过,该方法是打印出CLASSPATH环境变量的值。
于是乎,继续google,找到了Class的getResource与getResourceAsStream两个方法。这两个方法会委托给ClassLoader对应的同名方法。以为这样就可以搞定(实际上确实可以搞定),但验证 ...
一、基本概念
依赖注入: 在运行期,由外部容器动态的将依赖的对象注入到组件中(实例化所有的bean,然后按需注入到组件。)
控制反转:依赖对象的创建和管理(控制权)转移给了外部容器,这样可以很方便的通过容器的配置来管理对象。
容器:可以简单的想象为一个存放了一些单例的实例化对象(bean)的容器,你可以通过容器接口从容器里面拿你需要的对象实例。
二、Spring的主要特性
1. 降低组件之间的耦合度,实现软件各层之间的解耦。
2. 可以方便的使用容器提供的众多服务:事务管理服务、消息服务、JMS服务、持久化服务等等。
3. 容器提供单例模式。
4. 容器提供众多的辅助类,加速开发,如jdbcT ...
程序员如何扩大交际圈
- 博客分类:
- 心理学
程序员由于大部分时间面对电脑,而且加班很多,所以时间长了,往往会失去很多交际和认识新朋友的机会,这对于个人发展和更高质量的生活是不利的。
处理人际关系是一门非常高深并且有趣的学问(不必一本深入理解计算机系统简单),其最难的地方就在于没有标准答案。见人说人话,见鬼说鬼话。
沟通是一个不断学习和练习的过程,就像打游戏一样,开始很差,很快挂机,慢慢学习到一些技巧后,就能够随心所欲的玩。沟通也是要实践,失败,总结,重新再来,不断的练习。
走出第一步最难,你身边导出都是机会,难度不在于你如何沟通,而在于你是否愿意。
要多想和多琢磨如何改善人际关系,扩充自己的交际圈。程序编的好是因为你用了很多时间来 ...
上大学以后,我开始有了拖延的毛病。立下目标无数,但时常却动力奇缺,常常在网上浏览着各色的小说和帖子,或是玩很无聊的弱智在线小游戏,却不愿碰专业书本或文献一下,甚至哪怕deadline就在几天之后,只有在deadline之前一点点时间才会因紧迫感而开始着手学习任务。这样下来,学业上总体来说算是马马虎虎,但却离自己的理想越来越远。总之,就是无法完全地上进,又不愿彻底地堕落。
拖延的基础,实际上是对自身很高甚至不切实际的期望。如果说完成任务是走过一块一人宽、十米长的厚木板,那么当它放在地面上时,几乎人人都可以轻松地走过。但对结果的高期望则像是将这块木板架到了两座高楼间十层楼高的地方,于是我们会害怕 ...
一直都想去topcoder development上做一些项目,练练手,顺便运气好也能有些收入,今天去topcoder官网上看了一下,了解了development contest的基本过程。
首先看一下,这是一个典型的topcoder的项目需求说明:
http://www.topcoder.com/wiki/display ...
今天遇到一个很奇怪的问题,用spring中的getJdbcTemplate().query(sql,RowCallbackHandler)的方式执行查询,在查询字段使用distinct就会报ora-00904:无效列名解决错误(配置链接的是oracle 11g)。
解决过程:
首先将执行的sql打印出来为:select distinct(url) from book_store where id >100,在pl sql中执行没有问题。说明错误可能是在产生结果arraylist的时候出现的。但是在spring的代码中调试了半天,始终显示正确的sql是传入到java.net.sql中的st ...
面向接口的编程要求我们尽量在编写代码的过程中使用接口,包括用接口定义类的属性,向类方法中传入接口变量等等。那么,这样做的好处有哪些呢?
首先看下接口的定义:
Java中的接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。
使用接口的好处:
1. 从定义中,“接口方法可以在不同的方法被不同的类实现”,说明使用接口能够方便的去扩展,比如你在client中调用了一个接口,以后想用其他的实现,只需要重写一个实现类并扩展工厂就行了。
2. 可复用性,比如大型项目中,将Hibernate ...
您的电脑是个旧电脑,新的滑鼠都在使用USB接口了,而您的电脑上并没有USB,而只有一个PS2接口,这时您可以使用一个USB转PS2的接头作为转换,这样您的电脑就可以使用新滑鼠了(当然您也可以使用USB扩充卡,意思是相同的)。
...
现在国内IT行业普遍浮躁,高校毕业生的状况也让人担忧。知道不少学校的计算机专业的学生都是在网络游戏中学习了计算机四年,然后找工作的时候迫不得已去培训机构“实训”几个SSH的项目,然后就开始参加工作。这样培养出来的程序员可能也能够去交付一些项目,毕竟国内有钱的主很多,他们的需求也大同小异。但是可能程序员本身最大的一个素质在他们的身上会有缺失--创新。
在我们项目和我们合作的一些外国工程师,我观察有一些特点,比如专业,耐心,喜欢和人讨论等等。但是他们最独特的一个素质是: 对计算机行业以及计算机软件本身的强烈爱好。遇到一个问题会想出各种各样的很独特的办法去解决,表现出很大的热忱和兴趣。另外他 ...