属性赋值过程
截止到目前,我们讲到了很多位置都可以对类的属性赋值。现总结这几个位置,并指明赋值的先后顺序。
有4个可以设置属性的过程,他们之间的顺序是从上至下的:
- 默认初始化
- 显示初始化
- 构造器初始化
- 通过“对象.属性"或”对象.方法"的方式赋值
默认初始化
当一个对象被创建时,会对其中各种类型的成员变量自动进行初始化赋值。
class People
{
private String name;
private int age;
public People ()
{
}
public String getName ()
{
return this.name;
}
public int getAge ()
{
return this.age;
}
}
var p = new People();
System.out.println(p.getName() +" "+p.getAge()); // null 0
显示初始化
class People
{
private String name = "king";
private int age = 36;
private int id = nextId();
private int nextId ()
{
return (int) (Math.random() * 10000) + 1;
}
……
}
在java中,初始值不一定是常量值,还可以调用一个方法获取返回值。
构造器初始化
class Person
{
public String name;
public Person (String name)
{
this.name = name;
}
}