java字段初始值_Java字段初始化规律

首先先附上一段代码:public classInitializeBlockDemo {

public static voidmain(String[] args) {

InitializeBlockClass obj=newInitializeBlockClass();

System.out.println(obj.field);

obj=new InitializeBlockClass(300);

System.out.println(obj.field);

}

}classInitializeBlockClass{

//  //public int field=100;

//

{

field=200;

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

}publicInitializeBlockClass(){

}

}

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

1、成员定义的默认值

public int field=100;

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

2、类的构造方法

public InitializeBlockClass(intvalue){this.field=value;

}publicInitializeBlockClass(){

}

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

3、类的初始化块

{

field=200;

}

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

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值