总共有四种初始化数据域的方法:
1.通过在创建对象时调用构造器初始化
public class test_01 {
public static class Person{//创建一个Person类
private int num;
private String name;
public Person(int n,String s){//构造函数
num=n;
name=s;
}
public Person(){
}
}
public static void main(String[] args){
Person p1 = new Person(10,"xiaohong");//初始化对象p1,并初始化
}
}
2.类的定义中就已经为数据域赋了值
public static class Person{//创建一个Person类
private int num=10;
private String name="xiaohao";//在定义中初始化
public Person(int n,String s){//构造函数
num=n;
name=s;
}
public Person(){
}
}
3.通过初始化块
- 对非静态域初始化:只需要将初始化的语句用{}包括起来
- 对静态域初始化:用static{}包括起来
public static class Person{//创建一个Person类
private int num;
private static String name;
//非静态初始化块,针对非静态数据域
{
num=1;
}
static{//静态数据域,针对静态数据域
name="xiao";
}
}