• Java字段初始化规律


      首先先附上一段代码:public class InitializeBlockDemo {

    public static void main(String[] args) {
            
            InitializeBlockClass obj=new InitializeBlockClass();
            System.out.println(obj.field);
            
            obj=new InitializeBlockClass(300);
            System.out.println(obj.field);
        }
    
    }
    
    class InitializeBlockClass{
      //
      
      //public int field=100;
      //
        {
            field=200;
        }
    
        public int field=100;
    
        public InitializeBlockClass(int value){
            this.field=value;
        }
    
        public InitializeBlockClass(){
            
        }
    }

      下面开始介绍一下,在Java中字段的初始化规律,通常使用三种方法:类成员定义的默认值,类的构造方法,类的初始化块。

      1、成员定义的默认值

    public int field=100;

      通常我们在定义一个变量时,往往会赋予一个初始值。因此在创建类的对象时,便能给于初值。

      2、类的构造方法

    public InitializeBlockClass(int value){
            this.field=value;
        }
    
        public InitializeBlockClass(){
            
        }

      类的构造方法,也就是C/C++所指的的“构造函数”,当创建一个对象的时候,其类的构造方法便会被自动调用。构造方法的命名方式很简单,与类名相同,没有返回值。根据参数的不同可以进行重载。当我们没有定义构造方法时,Java编译器会默认一个没有参数的构造方法,但当我们定义了构造方法,系统将不会提供默认的构造方法。因此在定义构造方法时,一定满足调用所需要的条件。

      3、类的初始化块

    {
            field=200;
    }

      在类中使用“{”,“}”将语句包含,在内对成员进行初始化。

      当我们在调用时,其调用顺序又会是什么呢?经过对上述函数的改造,运行,我们可以得到结果,其运行顺序于调用的时间有关,取决于调用时成员的结果如上述程序,当调用的构造方法无参数时,其结果为field的最后得数 100,而将初始化块和定义顺序调过来时,其答案变为 200。在调用有参数的构造方法时,其答案便成了参数的结果 300。

  • 相关阅读:
    mysql主从复制的一些东西的整理
    (转载)[我只是认真]聊聊工匠情怀
    Redis运维的一些常用的命令总结
    关于mysql和Apache以及nginx的监控脚本怎么写会比较好的记录
    使用linux的nc来进行文件的传输
    nc检测端口是否正常服务的一个命令
    二维数组去除重复值和array_unique函数
    MySQL的备份的一些策略和方法的总结
    一些容易忘记的小知识点
    关于php多线程的记录
  • 原文地址:https://www.cnblogs.com/fwk123/p/11686310.html
Copyright © 2020-2023  润新知