javac 编译可以对字符串常量直接相加的表达式进行优化, 不必要等到运行期去进行加法运算处理, 而是在编译时去掉其中的加号, 直接将其编译成一个这些常量相连的结果。题目中的第一行代码被编译器在编译时优化后, 相当于直接定义了一个”abcd”的字符串,所以, 上面的代码应该只创建了一个 String ...
分类:
其他好文 时间:
2016-10-03 06:51:07
阅读次数:
148
一.AOP的概念 在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用A ...
分类:
编程语言 时间:
2016-09-29 13:29:54
阅读次数:
198
面向对象编程有三大特性:封装、继承、多态。 多态指程序中定义的引用变量所指向的具体类型和通过该引用变量发出的方法调用在编程时并不确定,而是在程序运行期间才确定,即一个引用变量倒底会指向哪个类的实例对象,该引用变量发出的方法调用到底是哪个类中实现的方法,必须在由程序运行期间才能决定。因为在程序运行时才 ...
分类:
编程语言 时间:
2016-09-28 22:37:07
阅读次数:
221
Raft启动后运行期间主要执行两个函数;1、状态监测和转化 func (rf *Raft) Loop() { // Set out as a follower TimeOutConst := 0 for { TimeOutConst = ElectionTimeoutConst() if rf.st ...
分类:
其他好文 时间:
2016-09-27 19:36:50
阅读次数:
166
一次执行 dispatch_once: 对应的代码只执行一次 , 并且它是线程安全的, 系统会自动这个函数加锁,保存同一时间只有一个线程去执行任务, 实现真正意义的一次性执行什么时候需要用到一次性执行: 单例单例:就是在程序运行期间,只有一个实例化对象 举例:音乐播放器的App, 同时只能播放一首歌 ...
分类:
其他好文 时间:
2016-09-27 16:23:12
阅读次数:
95
方法解析 Class 文件的编译过程中不包含传统编译中的连接步骤,一切方法调用在 Class 文件里面存储的都只是符号引用,而不是方法在实际运行时内存布局中的入口地址。这个特性给 Java 带来了更强大的动态扩展能力,使得可以在类运行期间才能确定某些目标方法的直接引用,称为动态连接,也有一部分方法的 ...
分类:
其他好文 时间:
2016-09-25 06:17:29
阅读次数:
186
C语言中的条件编译的行为类似于 C 语言中的 if…else…,是预编译指示命令,用于控制是否编译某段代码 。 1.条件编译的本质 (1)预编译器根据条件编译指令有选择的删除代码 (2)编译器不知道代码分支的存在 (3)if…else…语句在运行期进行分支判断 ,条件编译指令在预编译期进行分支判断 ...
分类:
编程语言 时间:
2016-09-24 14:54:53
阅读次数:
166
this是执行上下文中的一个属性。this与上下文中可执行代码的类型有直接关系,this值在进入上下文时确定,并且在上下文运行期间永久不变。 在这里一切都简单。在全局代码中,this始终是全局对象本身 在函数代码中使用this时,this值的首要特点(或许是最主要的)是它不是静态的绑定到一个函数。t ...
分类:
其他好文 时间:
2016-09-24 00:51:37
阅读次数:
120
Java 等面向对象的语言中,this 关键字的含义是明确且具体的,即指代当前对象。一般在编译期确定下来,或称为编译期绑定。而在 JavaScript 中,this 是动态绑定,或称为运行期绑定的,这就导致 JavaScript 中的 this 关键字有能力具备多重含义,带来灵活性的同时,也为初学者 ...
分类:
编程语言 时间:
2016-09-23 23:14:55
阅读次数:
213