Java 类对象 静态成员变量,静态代码块加载执行顺序。
package com.yjm.pro; import java.io.IOException; import java.util.Properties; public class Pro { public static String url; public static String username; public static String password; public static String classforname; public static String log; public static Properties properties; static { System.out.println("类静态代码块 执行test...."); properties = new Properties(); try { properties.load(Pro.class.getResourceAsStream("pro.properties")); url = properties.getProperty("url"); username = properties.getProperty("username"); password = properties.getProperty("password"); log = properties.getProperty("log"); classforname = properties .getProperty("classforname"); } catch (IOException e) { e.printStackTrace(); } } }
测试代码
public static void main(String[] args) { // test1(); // test2(); // test3(); test4(); } private static void test4() { System.out.println(Pro.class); System.out.println("类静态变量" + Pro.log); }
执行结果
class com.yjm.pro.Pro
类静态代码块 执行test....
类静态变量yes
测试的类 静态数据,在类引用的时候,才会执行静态代码块的数据。