java类对象的初始化顺序
来源:互联网 发布:移动4g网络优化是干嘛 编辑:程序博客网 时间:2024/06/05 15:20
类对象的初始化顺序
1.static成员变量默认初始化
2.static块初始化
3.实例成员变量默认初始化
4.实例块初始化
5.构造函数
或
1.static块初始化
2.static成员变量默认初始化
3.实例块初始化
4.实例成员变量默认初始化
5.构造函数
代码测试:
class Date{ private int year; private int month; private int day; //Date静态初始化块 static{ System.out.println("Date static init block!"); } //Date实例初始化块 { System.out.println("Date instance init block!"); this.year=year; this.month=month; this.day=day; } //Data自定义构造函数 public Date(int y,int m,int d){ System.out.println("Date(int, int ,int)"); this.year=y; this.month=m; this.day=d; }}class Staff{ private String name; private int age; private String sex; private static int count;//定义成static成员 ,此时它的内存从堆变到方法区 //private Date date; //测试用例1: private Date date=new Date(2017,1,7); //测试用例2: //private static Date date=new Date(2017,1,7); //Staff静态初始化块 static{ System.out.println("Staff static init block!"); count=0; } //Staff实例初始化块 { System.out.println("Staff instance init block!"); this.name = "default"; this.age = 0; this.sex = "default"; count++; } //Staff默认构造函数 public Staff(){ System.out.println("Staff(String, int, String, int, int, int)"); } //Staff自定义构造函数 public Staff(String name, int age, String sex,int y,int m,int d) { System.out.println("Staff(String, int, String, int, int, int)"); //date =new Date(y,m,d); this.name = name; this.age = age; this.sex = sex; } public String toString() { return "Staff [name=" + name + ", age=" + age + ", sex=" + sex + ", date=" + date + "]"; }}public class TestObjectDemo { public static void main(String[] args) { Staff p1=new Staff("李敏镐",32,"男",1987,5,18); } }
测试用例1结果:
测试用例2结果:
阅读全文
0 0
- java类与对象的初始化顺序
- Java类及对象初始化的顺序
- Java类和对象的初始化顺序
- Java类与对象的初始化顺序
- Java类和对象的初始化顺序
- java类对象的初始化顺序
- java对象的初始化顺序
- java对象的初始化顺序
- java对象的初始化顺序
- JAVA对象的初始化顺序
- java对象的初始化顺序
- java对象初始化的顺序
- java对象的初始化顺序
- java 对象的初始化顺序
- Java 类和对象的初始化过程及初始化顺序
- Java 类和对象的初始化过程及初始化顺序
- [Java] Java类属性和对象属性的初始化顺序
- JAVA对象初始化顺序
- 62. Unique Paths
- PCF8563/DS1302/DS1307/DS3231等常见时钟芯片驱动程序
- 基于K-means聚类算法的入侵检测系统的设计
- PAT乙级1007(编译未通过)
- 类迅雷下载管理工具
- java类对象的初始化顺序
- RecyclerView嵌套GridView,GridView显示不全
- 10043---使用Freemarker实现网页静态化
- 2017-10-27 周测试题
- 初次使用wget下载
- Matlab基础语法
- BeanUtils拷贝两个对象的相同属性
- spring注解配置
- 【Shell】for循环