遇到的异常: java.lang.ExceptionInInitializerError静态块初始化异常 NetworkOnMainThreadException访问网线不能在主线程中进行 我的参考资料: http://www.oschina.net/question/1764894_246656? ...
分类:
其他好文 时间:
2016-06-16 18:02:06
阅读次数:
213
Mastiff类 DOG类 运行结果为: 也就是说,在我们的程序中,实例化一个类对象的时候,运行顺序为: 我们可以更进一步,如果在父类中也有块和静态块呢? DOG类改进后源码 Mastiff改进后源码 运行的结果为: 也就是说此时的运行顺序为: 好了,知道了运行的顺序,那么这是为什么呢? 这就要从J ...
分类:
编程语言 时间:
2016-06-03 14:21:31
阅读次数:
226
在编译生成class文件时,会自动产生两个方法,一个是类的初始化方法<clinit>, 另一个是实例的初始化方法<init> <clinit>:在jvm第一次加载class文件时调用,包括静态变量初始化语句和静态块的执行 <init>:在实例创建出来的时候调用,包括调用new操作符;调用Class或 ...
分类:
其他好文 时间:
2016-05-27 23:37:40
阅读次数:
316
转载自: http://blog.sina.com.cn/s/blog_afddb8ff0101aqs9.html 静态代码块:有些代码必须在项目启动的时候就执行,这种代码是主动执行的(当类被载入时,静态代码块被执行,且只被执行一次,静态块常用来执行类属性的初始化) 静态方法:需要在项目启动的时候就 ...
分类:
编程语言 时间:
2016-04-14 11:54:54
阅读次数:
145
针对最近腾讯、京东、网易等公司的笔试,遇到一些有关Java基础的问题,在此通过一些例子总结一下,希望能通过这几道题发散,举一反三,借此打牢基础!自己总结,望提出宝贵意见!
1、一、最近笔试,经常会遇到一些“下面这段代码输出的结果是什么?是否编译出错?”类似的问题
2、对于null
3、类加载时的静态块与构造方法执行顺序问题
4、包含继承关系的构造方法问题
5、Integer与int的'=='比较问题
6、关于抽象类与接口
(未完待续)...
分类:
编程语言 时间:
2016-04-10 14:59:34
阅读次数:
254
一、一个类的初始化顺序(没继承情况) 规则: 1.静态变量>普通变量>构造方法 2.变量定义的顺序决定初始化的顺序 3.静态变量和静态块是一样的,普通变量和非静态块是一样的,即能够把静态块看作是静态变量。把非静态块看作是普通变量 public class Test1 { public static ...
分类:
编程语言 时间:
2016-04-08 11:56:53
阅读次数:
204
http://www.cnblogs.com/wenruo/articles/5349525.html 先不考虑父类。 当创建类对象时,先初始化静态变量和静态块,然后是非静态变量和非静态代码块,然后是构造器。由于静态成员只会被初始化一次,所以如果静态成员已经被初始化过,将不会被再次初始化。 例如 输 ...
分类:
编程语言 时间:
2016-04-03 13:05:02
阅读次数:
280
先给结论: 执行顺序:父类静态块->子类静态块(main函数执行前)->父类块->父类构造器->子类块->子类构造器 赋值顺序:成员变量赋值->块赋值->构造器赋值 1 class A{ 2 static{System.out.println("Class A");} 3 {System.out.p
分类:
编程语言 时间:
2016-02-27 22:04:13
阅读次数:
200
一、误区:简单认为JAVA静态代码块在类被加载时就会自动执行。证错如下: [java] view plain copy class MyClass1 { static {//静态块 System.out.println("static block "); } } public class Main
分类:
编程语言 时间:
2016-02-04 18:40:04
阅读次数:
181
非静态内部类里,不可以有静态方法、静态属性、静态块。
分类:
其他好文 时间:
2016-01-22 08:14:16
阅读次数:
124