1. ThreadLocal的内部结构 1.1 常见的误解 通常,如果我们不去看源代码的话,我猜ThreadLocal是这样子设计的:每个ThreadLocal类都创建一个Map,然后用线程的ID threadID作为Map的key,要存储的局部变量作为Map的value,这样就能达到各个线程的局部 ...
分类:
其他好文 时间:
2020-04-03 01:06:07
阅读次数:
76
简单运算,却有意想不到的结果 局部变量表、虚拟机栈(操作数栈)运算刨析 举例: public class Test { public static void main(String[] args) { int i = 1; i = i++; int j = i++; int k = i + ++i ...
分类:
其他好文 时间:
2020-03-31 23:13:41
阅读次数:
193
网上找的没有指令码这列 自己把它加上 更方便查阅 指令从0x00-0xc9 没有0xba 常量入栈指令 指令码 操作码(助记符) 操作数 描述(栈指操作数栈) 0x01 aconst_null null值入栈。 0x02 iconst_m1 -1(int)值入栈。 0x03 iconst_0 0(i ...
分类:
编程语言 时间:
2020-03-31 22:58:23
阅读次数:
74
1.当static关键字修饰局部变量时,只会初始化一次且在程序中只有一份内存; @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; self.view.backgroundColor = [UIColor ...
分类:
其他好文 时间:
2020-03-31 22:32:59
阅读次数:
80
运行时栈帧结构 栈帧时用于支持虚拟机进行方法调用和方法执行背后的数据结构,它也是虚拟机运行时数据区中的虚拟机栈的栈元素。栈帧存储了方法的局部变量表、操作数栈、动态链接、和方法返回地址等信息。 局部变量表 局部变量表的容量以变量槽为最小单位。每个变量槽应该能存放一个boolean、byte、char、 ...
分类:
其他好文 时间:
2020-03-31 14:06:10
阅读次数:
59
今晚面试阿里巴巴cbu技术部测试开发,面试官问我闭包是什么?顿时愣住了,只能说python掌握的还是不够深 闭包简单来说,闭包就是能够读取其他函数内部变量的函数,一个函数内部定义一个函数并返回, 这个内部函数可以访问外部函数的局部变量 通过一个例子来说明 def outer(a): b=10 def ...
分类:
编程语言 时间:
2020-03-30 23:27:21
阅读次数:
93
JavaScript 作用域 作用域是可访问变量的集合。 JavaScript 作用域 在 JavaScript 中, 对象和函数同样也是变量。 在 JavaScript 中, 作用域为可访问变量,对象,函数的集合。 JavaScript 局部作用域 变量在函数内声明,变量为局部作用域。 局部变量: ...
分类:
编程语言 时间:
2020-03-29 17:50:06
阅读次数:
79
函数(声明,调用) 1.命名函数 2.匿名函数 全局变量 局部变量 作用域 作用域链 对象 (属性,方法) 创建对象方法 1.系统内部构造函数,创建对象 2.自定义构造函数创建对象 3.字面量创建对象 4.推论出的工厂模式 内置对象:实例化对象 Array Math 自定义对象:不需要实例化 浏览器 ...
分类:
Web程序 时间:
2020-03-29 10:51:01
阅读次数:
67
Java 11是Java8后的首个长期支持版本。按照 Oracle 公布的支持路线图,Java 11 将会获得 Oracle 提供的长期支持服务,直至2026年9月。 按照官方的说法,新的发布周期会严格遵循时间点,将于每年的3月份和9月份发布。所以 Java 11 的版本号是 18.9(LTS)。不 ...
分类:
编程语言 时间:
2020-03-28 23:23:17
阅读次数:
86
内存区域划分 1.程序计数器:当前线程的正在执行的字节码指示器 2.虚拟机栈和本地方法栈:虚拟机栈存储局部变量表(包括方法入参和布局变量)、操作数栈、方法返回地址(调用者的栈帧,包括return返回和异常返回)等 3.堆:为几乎所有对象实例分配内存的区域 4.方法区:用于存储已被虚拟机加载的类信息、 ...
分类:
其他好文 时间:
2020-03-28 20:11:44
阅读次数:
83