007 Java 初始化 静态属性,静态代码块,普通属性,普通方法,普通方法块,构造函数 的初始化顺序 可变参数方法 类的初始化

本文详细探讨了Java中类的初始化顺序,包括静态属性、静态代码块、普通属性、普通方法块、构造函数的执行流程。同时,介绍了数组的初始化方式,以及可变参数方法的使用和调用示例。通过实例代码展示了每一步的执行顺序,帮助读者深入理解Java类的生命周期和初始化过程。
摘要由CSDN通过智能技术生成

类的初始化

使用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}); //传递数组


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

EngineerForSoul

你的鼓励是我孜孜不倦的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值