类的初始化
使用new关键字创建一个类,并调用类的构造方法,初始化该类。
构造方法可以对类的属性进行赋值。
成员变量
成员变量:方法外部,类内部。也成类属性
需要注意成员变量在没有被赋值时的默认值。
String也是一种对象,初始默认值为null
静态属性,静态代码块,普通属性,普通方法,普通方法块,构造函数 的初始化顺序
- 静态属性:static修饰的属性
- 静态方法块:static{}包括的代码块
- 普通属性:非static的属性(为了效果,调用方法输出测试)
- 普通方法块:{}包括的代码块
- 构造函数:类名相同的方法,用来初始化方法
- 方法:普通方法,在调用时才有效果
public class LifeCycle {
//静态属性
private static String staticField = getStaticField();
//静态代码块
static {
System.out.println("静态属性staticField:" + staticField);
System.out.println("2:静态代码块");
}
//普通属性 调用谱方法初始化
private String field =getField();
//普通方法块
{
System.out.println("4:普通方法块初始化 field:" + field);
}
private String getField() {
System.out.println("3:普通属性");
return "field";
}
private static String getStaticField() {
System.out.println("1:静态属性");
return "staticField";
}
//构造函数
public LifeCycle (){
System.out.println("5:构造函数初始化");
}
public static void main(String[] args) {
new LifeCycle();
}
}
执行结果:
1:静态属性
静态属性staticField:staticField
2:静态代码块
3:普通属性
4:普通方法块初始化 field:field
5:构造函数初始化
数组的初始化
int [] a;
或 一般使用下面的
int a[];
直接赋值
int array[3] = {1,2,3};
部分赋值 第三个值为int的默认值0
int array[3] = {1,2};
赋值参数决定数组长度,下例数组长度为2
int array[] = {1,2};
可变参数方法
public int add (int...numbers){
int sum = 0;
for(int num : numbers){
sum+=num;
}
return sum;
}
调用方法
add(); //不传参数
add(1); //一个参数
add(1,2); //两个参数
add(new Integer[]{1,2,3,4}); //传递数组