理解static与非static部分的实例化
来源:互联网 发布:淘宝hd登录失败 编辑:程序博客网 时间:2024/06/10 22:23
1. static属性的实例化过程
查看编译文件就会发现,static块会在最开始自动加上static属性值的初始化内容,顺序是按照书写依次执行,再然后是static块本身的内容。
a)先调用父类的static{}
b) static{
static属性值A 赋值操作
static属性值B 赋值操作
static块本身的赋值操作
}
2.非static 属性的实例化过程
查看编译文件会发现,所有的构造器都会在最开始自动加上非static的属性值以及普通块的内容,顺序是先非static属性值依次执行,再然后是普通块的内容,最后是构造器本身的内容。
Constructor(){
super(******)
非static属性值A 赋值操作
非static属性值B 赋值操作
普通块的操作
构造器本身的操作
}
Constructor(String a){
static属性值A 赋值操作
非static属性值A 赋值操作
非static属性值B 赋值操作
普通块的操作
构造器本身的操作
}
3. 以非static属性为例,解释了为什么前一个属性值A在赋值操作的的时候如果引用B则此时B是null。注意:如果B是final的并且是直接赋值,那么A同样可以引用到B被赋值后的值。
static同理。
static属性值A 赋值操作
阅读全文
0 0
- 理解static与非static部分的实例化
- static与非static
- static的全面理解(C部分)
- static 与 final 的理解
- static inner class和非static inner class的实例化问题
- static方法与非static方法相互调用的方式
- synchronized修饰static方法与非static方法的区别
- Java的static方法与非static方法
- Static 静态与非静态的区别
- 【Java】static方法与非static方法
- static关键字详解——static与非static的区别
- static关键字详解——static与非static的区别
- 理解Static与Const
- 实例变量与static变量的区别
- 关于static与堆栈的简单理解
- 关于static和非static的林林总总
- static和非static的区别
- Static和非Static的区别
- 设计模式-创建模式之Singleton
- go语言学习-复数
- 向Windows右键添加CMD命令提示符+图标
- Html笔记
- 锁与并发
- 理解static与非static部分的实例化
- 虚拟机类加载机制
- 架构设计的五个核心要素
- Python3.5新特性
- 【高效代码调错系列】——宏观概况
- 虚拟机类加载器
- 【计算机视觉之四】深度学习框架介绍
- Mysql连接、启动和关闭
- 思科路由模拟器 -- (6)VLAN Trunk VTP协议及配置