Init实例构造器

来源:互联网 发布:平安普惠软件打不开啊 编辑:程序博客网 时间:2024/06/05 14:09

package com.it;public class Init { //init收集实例变量初始化器,实力初始化器 。收集顺序 //clinit和init一样。 //赋值的地方,默认赋值1次,实例变量初始化器1次,实例初始化器1次,构造方法1次 //有=号的字段和构造块,收集到init中,没有的不收集 int i=1;  int j; {  j=10; } //new 完成2步, //1构造方法执行之前,会分配内存 ,设置默认值0 //2调用构造方法  //构造方法收集顺序 //1调用父类 init //2按照 实例变量初始化器,实例初始化器 顺序。收集到此。 //3构造方法的逻辑 public Init() {  //父类 Object的init方法  //i j 会收集到此处  System.out.println("---"); //构造方法逻辑 }  public Init(int i,int j) {  int zz=10;  System.out.println("--Value-"); } /*  在本文的前面部分,我们提到过,JVM在为一个对象分配完内存之后,会给每一个实例变量赋予默认值,这个时候实例变量被第一次赋值,这个赋值过程是没有办法避免的。 如果我们在实例变量初始化器中对某个实例x变量做了初始化操作,那么这个时候,这个实例变量就被第二次赋值了。 如果我们在实例初始化器中,又对变量x做了初始化操作,那么这个时候,这个实例变量就被第三次赋值了。 如果我们在类的构造函数中,也对变量x做了初始化操作,那么这个时候,变量x就被第四次赋值。 也就是说,一个实例变量,在Java的对象初始化过程中,最多可以被初始化4次*/}

0 0
原创粉丝点击