今天在学JDBC的时候遇到类似于“static{}”,表示很不解,在网上查了很多资料,遂将其记下。
“static{}”就是代码块的意思。它可以保证无论所属类被加载多少次,static块中的语句只被执行一次。话不多说,代码验证:
package com.jdbc;
public class staticdemo {
public static void main(String args[]){
try {
Class.forName("com.jdbc.stac");
Class.forName("com.jdbc.stac");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
class stac{
public static int ss=1;
stac(){
system.out.println("static块被执行")
}
public static void show(){
System.out.println("静态方法");
}
}
从主类中我们可以知道stac类被加载了两次,但是只输出一次“static{}“中的语句。。。。