static关键字通常应用在字段、方法、静态块,还有冷门一点的内容:静态内部类、静态导入 static字段: static字段也就是静态变量,是属于类的,被所有的对象所共享,只有当类初次加载的时候保存到内存中,在内存中只保存一份 实例变量是属于对象的,在创建对象的时候进行初始化,每个对象的实例变量是 ...
分类:
编程语言 时间:
2019-06-16 00:30:36
阅读次数:
162
继承的时候: 分析:对象的初始化顺序:首先执行父类静态的内容,父类静态的内容执行完毕后,接着去执行子类的静态的内容,当子类的静态内容执行完毕之后,再去看父类有没有非静态代码块,如果有就执行父类的非静态代码块,父类的非静态代码块执行完毕,接着执行父类的构造方法;父类的构造方法执行完毕之后,它接着去看子 ...
分类:
编程语言 时间:
2019-06-10 14:15:39
阅读次数:
145
前言: 说下这篇文章的来龙去脉:昨天接到了阿里小哥哥的面试电话,小哥哥问我jvm加载类的过程。然后我巴拉巴拉说了一堆classLoader装载类的过程。然后小哥哥说我不是要问这些。。。好吧装载加载傻傻分不清楚。 jvm加载类过程(本人不会,以下内容由小哥哥解释给我听的): classLoader装载 ...
分类:
其他好文 时间:
2019-05-25 12:59:35
阅读次数:
99
类在初始化时的执行顺序,依次如下: 1: 子类静态变量 2: 子类静态构造函数 3: 子类非静态变量 4: 父类静态变量 5: 父类静态构造函数 6: 父类非静态变量 7: 父类构造函数 8: 子类构造函数 对于静态变量与静态构造函数而言, 无论对一个类创建多少个实例,它的静态成员都只有一个副本。 ...
重载与重写的区别 重载是指在一个类中定义多个方法名相同但参数列表不同的方法,与返回值无关。 重写是指在子类中定义和父类完全相同的方法,在程序运行时,根据对象的类型不同而调用不同的版本。 重载 重写 子类继承父类的方法顺序 ...
分类:
其他好文 时间:
2019-01-14 21:29:11
阅读次数:
137
1、父类中私有方法不能被重写。因为父类的私有方法子类根本就无法继承。 2、子类重写父类方法时,访问权限不能更低。最好就一致。 3、父类静态方法,子类也必须通过静态方法进行重写。其实这个算不上方法重写,但是现象确实如此。(静态只能覆盖静态) 4、子类重写父类方法的时候,最好声明一模一样。 ...
分类:
编程语言 时间:
2018-12-17 23:56:33
阅读次数:
278
1. 静态初始化块 > 初始化块 > 构造器 2. 父类 > 子类 综合下来顺序就是: 父类静态初始化块 子类静态初始化块 父类初始化块 父类构造器 子类初始化块 子类构造器 需要注意静态初始化块是在类第一次加载的时候就会进行初始化, 其余是在实例化时初始化。 ...
分类:
编程语言 时间:
2018-12-03 19:49:30
阅读次数:
190
类的实例化顺序,比如父类静态数据,构造函数,字段,子类静态数据, 先静态、先父后子。 先静态:父静态 > 子静态 优先级:父类 > 子类 静态代码块 > 非静态代码块 > 构造函数 构造函数,字段,他们的执行顺序 一个类的实例化过程: 1,父类中的static代码块,当前类的static 2,顺序执 ...
分类:
编程语言 时间:
2018-09-08 15:18:44
阅读次数:
140
首先,需要明白类的加载顺序。详情请参考https://www.cnblogs.com/wwb0811/p/9602148.html (1) 父类静态代码块(包括静态初始化块,静态属性,但不包括静态方法) (2) 子类静态代码块(包括静态初始化块,静态属性,但不包括静态方法 ) (3) 父类非静态代码 ...
分类:
其他好文 时间:
2018-09-07 22:45:10
阅读次数:
265
1.父类静态代码块 ( java虚拟机加载类时,就会执行该块代码,故只执行一次) 2 .子类静态代码块 ( java虚拟机加载类时,就会执行该块代码,故只执行一次) 3. 父类属性对象初始化 4.父类普通代码块(每次new,每次执行 ) 5.&n ...
分类:
编程语言 时间:
2018-08-30 16:43:51
阅读次数:
135