zoukankan      html  css  js  c++  java
  • java中的多构造函数以及类字段的初始化顺序

    1.同一个类可以有多个构造函数,多个构造函数之间通过参数来区分。这是方法重载的一个实例。构造函数之间可以相互调用。

    2.类的初始化块:可以在类中使用“{”和“}”将语句包围起来,直接将其作为类的成员。类的这种“没有名字”的“成员”,多用于初始化类的字段。

    如下:

    public class Test{
          public int value =200;
          {
                value=100;
          }
    }
    

    3.如果一个类中既有初始化块,又有构造方法,同时还设定了字段的初始值,谁说了算?
      

    package ppt_test;
    
    public class test2 {
    
    	public int filed=100;
    	{
    		filed=200;
    		}
    	public test2(int value)
    	{
    		this.filed=value;
    	}
    	public test2(){	
    		
    	}
    	public static void main(String args[])
    	{
    		test2 obj=new test2();
    		System.out.println(obj.filed);
    		test2 obj2=new test2(300);
    		System.out.println(obj2.filed);
    	}
    }
    

      

          这是输出结果,为什么呢?下面是类字段的初始化顺序

          1.执行类成员定义时指定的默认值或类的初始化块,到底执行哪一个要看哪一个“排在前面”。
          2. 执行类的构造函数。

    © 版权声明
    文章版权归作者所有,未经允许请勿转载。
    THE END
  • 相关阅读:
    关于struts页面跳转的问题
    java中==和equals的区别
    控制广播风暴的方法
    广播风暴的成因及解决办法
    思科FEX配置
    思科vPC技术和配置
    数据中心架构TOR和EOR
    ARP表项及老化时间
    MAC地址表和老化时间
    track 3 list boolean or
  • 原文地址:https://www.cnblogs.com/xp-thebest/p/11688255.html
Copyright © 2011-2022 走看看