初始化块:
在类的声明中,可以包含多个初始化块,当创建类的实例时,会依次执行这些初始化块
静态初始化块:
用static修饰初始化块,称为静态初始化块;
构造方法:
它是一个与类同名且没有返回值类型的方法;
三者之间的不同:
初始化块和构造方法都是在创建类的实例时执行,静态初始化块只在类加载的时候执行,且只会执行一次,且只能初始化静态变量
优先级:
静态初始化块>初始化块>构造方法
1 package com.imooc.tes002; 2 3 public class HelloWorld { 4 5 int num1; 6 int num2; 7 static int num3; 8 9 public HelloWorld(){//构造方法 10 num1 = 100; 11 System.out.println("通过构造方法为变量num1赋值"); 12 } 13 { 14 num2 = 200; 15 System.out.println("通过初始化块为变量num2赋值"); 16 } 17 static{ 18 num3 = 300; 19 System.out.println("通过静态初始化块为静态变量num3赋值"); 20 } 21 22 public static void main(String[] args) { 23 HelloWorld hello = new HelloWorld(); 24 HelloWorld hello2 = new HelloWorld(); 25 } 26 27 }
参考:慕课网(http://www.imooc.com/)
时间: 2024-10-08 03:46:27