程序计数器:记录当前线程的执行位置(便于CPU切换线程的时候执行) 虚拟机栈:Java方法,方法从调用到执行完成对应一个栈帧从虚拟机栈入栈到出栈的过程。 本地方法区:Native方法(C++) 方法区:常量(final)、静态变量、类的信息 Java堆:对象的实例 ...
分类:
编程语言 时间:
2016-08-18 21:07:39
阅读次数:
137
对于静态变量、静态初始化块、变量、初始化块、构造器,它们的初始化顺序依次是(静态变量、静态初始化块)>(变量、初始化块)>构造器。我们也可以通过下面的测试代码来验证这一点:public class InitialOrderTest {// 静态变量public static String stati ...
分类:
编程语言 时间:
2016-08-14 07:19:12
阅读次数:
177
static{}(即static块),会在类被加载的时候执行且仅会被执行一次,一般用来初始化静态变量和调用静态方法,下面我们详细的讨论一下该语句块的特性及应用。 一、在程序的一次执行过程中,static{}语句块中的内容只被执行一次,看下面的示例: 示例一 [java] view plain cop ...
分类:
其他好文 时间:
2016-08-13 19:32:16
阅读次数:
137
变量的储存类型决定标量何时创建,何时销毁以及他的值保持多久。有三个地方可以储存变量: 普通内存static 运行时堆栈auto 硬件寄存器register 变量的缺省储存类型取决于它的声明位置: 静态变量static: 凡是在代码块之外声明的变量总是存储于静态内存中,不属于堆栈的内存,无法为他们指定 ...
分类:
其他好文 时间:
2016-08-13 15:38:19
阅读次数:
100
内部类,顾名思义,就是放在一个类内部的类,一般情况下我们比较少用,但是内部类在实现逻辑的隐藏,多重继承方面有着不小的用途。内部类,主要区分如下 1. 静态内部类 可以将该内部类看作静态方法,可以访问外部类静态变量和静态方法,但是不能访问外部类实例变量和实例方法 实例化方式:Out.In in = n ...
分类:
其他好文 时间:
2016-08-12 01:23:28
阅读次数:
134
1.接口的声明 接口的声明不能包含:数据成员,静态变量;只能包含如下类型的静态成员函数的声明:方法,属性,事件,索引器。声明中不能包含任何实现的代码,而在每个成员成名的主体后,必须使用分号。 接口声明可以有任何的修饰符public、protect、internl或private。 接口的成员是隐式的 ...
分类:
Web程序 时间:
2016-08-11 09:48:41
阅读次数:
233
非公有的变量前面要加上小写m, 静态变量前面加上小写s, 其它变量以小写字母开头, 静态变量全大写 例子 截取自http://blog.csdn.net/ameryzhu/article/details/12236215,感谢原作者,侵删 ...
分类:
移动开发 时间:
2016-08-09 14:59:14
阅读次数:
193
下面这段代码,如果Lazyholder没有static修饰,则编译不过 "非静态内部类不能拥有静态变量" ,可以这样理解,因为JVM类加载的顺序为: 1.先加载类 2.执行static变量的初始化 3.对象创建 如果LazyHolder没有static,则本质上,它其实是Singleton2的非静态 ...
分类:
其他好文 时间:
2016-08-08 17:08:20
阅读次数:
111
当初去盛大笔试的时最后有两道题目,一道题目是关于Static,一道是关于clone()方法; Static表示的是静态关键字,可以修饰变量和方法; 静态变量(属性): 静态变量可以理解为“只有一个”,无论它所在的类创造多少个实例,它始终只有一个,在内存中只有一份,为所有的实例共用。 下面是例子: < ...
分类:
Web程序 时间:
2016-08-08 14:14:14
阅读次数:
124
static{}(即static块),会在类被加载的时候执行且仅会被执行一次,一般用来初始化静态变量和调用静态方法,下面我们详细的讨论一下该语句块的特性及应用。 一、在程序的一次执行过程中,static{}语句块中的内容只被执行一次,看下面的示例: 示例一 结果:你会发现虽然执行了两条Class.f ...
分类:
其他好文 时间:
2016-08-08 12:34:11
阅读次数:
127