一、变量的作用域要理解闭包,首先必须理解Javascript特殊的变量作用域。变量的作用域无非就是两种:全局变量和局部变量。Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量。Js代码
var n=999; function f1(){ alert(n); } f1...
分类:
Web程序 时间:
2014-05-28 04:40:27
阅读次数:
369
全局变量的问题创建隐式全局变量的反模式是带有var声明的链式赋值。在下面的代码片段中, a
是局部变量, b 是全局变量,这也许并不是你想要的function foo(){ var a = b = 0; //var a window.b; //
....}//造成上面的原因是源于从右至左的操...
分类:
编程语言 时间:
2014-05-28 02:25:25
阅读次数:
209
java多线程编程中,存在很多线程安全问题,至于什么是线程安全呢,给出一个通俗易懂的概念还是蛮难的,如同《java并发编程实践》中所说:写道给线程安全下定义比较困难。存在很多种定义,如:“一个类在可以被多个线程安全调用时就是线程安全的”。
静态变量:线程非安全。静态变量即类变量,位于方法区,为所有对...
分类:
编程语言 时间:
2014-05-26 13:30:48
阅读次数:
467
一、内存基本构成
可编程内存在基本上分为这样的几大部分:静态存储区、堆区和栈区。他们的功能不同,对他们使用方式也就不同。
静态存储区:内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。它主要存放静态数据、全局数据和常量。
栈区:在执行函数时,函数内局部变量的存储单元都可以在栈上创...
分类:
其他好文 时间:
2014-05-26 07:53:33
阅读次数:
308
1.方法区 类的全限定名、直接超类的全限定名、该类是类或者接口、访问修饰符、直接超接口全限定名; 运行时常量池、字段、方法、静态变量、到类装载器的引用、到类class的引用2.栈内存 局部变量区、操作数栈、帧数据区3.堆内存 存放由new创建的对象和数组*栈内存和堆内存 栈存取速度比堆快,仅次于寄存...
分类:
编程语言 时间:
2014-05-26 01:08:23
阅读次数:
329
--静态局部变量把局部变量改变为静态变量后是改变了它的存储方式,即改变了它的生存期,值在下次调用的时候不会像auto那样再重新赋值,赋值只有一次,在函数体内被改变后依然存在,不会消亡。不变的是作用范围依然是在函数体内。--静态全局变量把全局变量改变为静态变量后是改变了它的作用域,限制了它的使用范围,...
分类:
其他好文 时间:
2014-05-26 00:38:35
阅读次数:
241
一、设计线程安全的类
在设计线程安全类的过程中,需要包含以下三个基本要素:
. 找出构成对象状态的所有变量。
. 找出约束状态变量的不变性条件。
. 建立对象状态的并发访问管理策略。
分析对象的状态,首先从对象的域开始。 变量按作用域划分:
. 全局变量
. 局部变量
. 方法行参
. 异常处理参数
1. 收集同步需求
如果不了解对象的不变性条件...
分类:
编程语言 时间:
2014-05-25 08:41:05
阅读次数:
290
1. 一句话 :
js的闭包就是子函数可以使用父函数中的局部变量,这种行为就叫做闭包。2.例子js:function f(){ var a =5; function g(){
a++; return a; } }var h=f();var c =h();// c is 6var...
分类:
Web程序 时间:
2014-05-25 03:22:53
阅读次数:
213
1.局部变量 第一次提出局部变量,是在1960年的 ALGOL 60
语言,现在广泛使用的C语言就继承与它(语言图谱)。局部变量让一段代码相对独立,让给纸带打孔的码农从全局变量中解脱。说到与局部变量,一定会想到子程序。从现代语言看,子程序和局部变量就如前门大少与杀毒哥,如胶似漆♂形影不离。有趣的是这...
分类:
其他好文 时间:
2014-05-25 02:09:21
阅读次数:
320
-----------android培训、java培训、java学习型技术博客、期待与您交流!---------注解是java
的一个新的类型(与接口很相似),它与类、接口、枚举是在同一个层次,它们都称作为java
的一个类型(TYPE)。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,...
分类:
编程语言 时间:
2014-05-24 10:46:09
阅读次数:
294