1·、static应用范围:可用于内部类、方法和变量。 2、标记一个方法为static,意味着这个方法,被所在类的所有实例公用,在类装载时初始化,被所有该类的实例共享,同时意味着: A、static方法内部不能引用非static变量。 B、static方法不能被子类重写为非static方法。 C、父 ...
分类:
其他好文 时间:
2018-04-01 20:51:49
阅读次数:
187
同一类的所有实例的静态变量共享用一块内存区。 但两个jvm之间并不会共享数据。类被加载之后,系统为之生成一个对应的class对象。 1.类的加载 将类的class文件读入内存,并创建class对象。 2.连接 连接的过程分为三步: (1)验证 被加载的类的内部结构是否正确、协调。 (2)准备 为类变 ...
分类:
编程语言 时间:
2018-04-01 16:08:44
阅读次数:
181
这一章我们对初始化进行一下更深的理解: 类在初始化的时候,静态变量的声明语句以及静态代码块都被看作类的初始化语句,Java虚拟机会按照初始化语句在类文件中的先后顺序来依次加载它们。 上图中a的初始化其实经过了四步1、a被初始化为默认值02、a被赋予正确的初始值13、执行静态代码块,将a的值赋为24、 ...
分类:
其他好文 时间:
2018-04-01 16:06:10
阅读次数:
161
阅读《构建之法》第四章、第十七章 阅读这一章的时候,我意识到了很多以前写程序没有注意到的地方,以前写程序就只知道能运行就好,根本不管自己写的程序占多少内存,运行的时间,是否有优化的空间,写代码的时候也不注意规范,有时候设计的函数根本用不上,造成代码冗余。同时也认识到结对编程的重要性,没读这本书之前就 ...
分类:
其他好文 时间:
2018-04-01 10:42:35
阅读次数:
185
方法区(Method Area) 在JVM中,类型信息和类静态变量都保存在方法区中,需要注意的一点是,常量池也存放于方法区中。 类型信息包括: ...
分类:
其他好文 时间:
2018-03-31 18:15:38
阅读次数:
133
代码块,static,final,内部类,匿名内部类,匿名对象 ...
分类:
其他好文 时间:
2018-03-31 17:31:11
阅读次数:
131
成员变量(属性)和静态变量的区别:成员变量是包含在对象之中的是对象的特征,而静态变量是独立在对象之外的每个对象都有成员变量,而且对一个对象变量的变化,不会影响到别的对象,但静态变量是所有对象共享的变量,它的变化会引起所有对象的变化 成员变量是随着对象的产生而产生随着对象的销毁而销毁,而静态变量加载的 ...
分类:
其他好文 时间:
2018-03-31 13:12:26
阅读次数:
103
参考文章: 静态导包:https://blog.csdn.net/u012338954/article/details/51010337 静态变量和静态方法static关键字最基本的用法是:1、被static修饰的变量属于类变量,可以通过类名.变量名直接引用,而不需要new出一个类来2、被stati ...
分类:
编程语言 时间:
2018-03-30 23:12:41
阅读次数:
248
Java内存结构: JVM内存结构主要是有三大块:堆内存、方法区和栈。堆内存是JVM中最大的一块由年轻代和老年代组成,而年轻代内存又被分为三部分,Eden空间、From Survivor空间、To Survivor空间,默认情况下年轻代按照8:1:1的比例来分配; 方法区存储类信息、常量、静态变量等 ...
分类:
其他好文 时间:
2018-03-30 10:15:29
阅读次数:
129
1. 静态变量和实例变量的区别 局部变量不能用静态的,如果用了静态的,则不会从静态区消失 * 静态变量也叫类变量 成员变量也叫对象变量 * A:所属不同 * 静态变量属于类,所以也称为为类变量 * 成员变量属于对象,所以也称为实例变量(对象变量) * B:内存中位置不同 * 静态变量存储于方法区的静 ...
分类:
编程语言 时间:
2018-03-25 19:54:30
阅读次数:
221