| 静态代码块:用于给类初始化,类加载时就会被加载执行,只加载一次。 构造代码块:用于给对象初始化的。只要建立对象该部分就会被执行,且优先于构造函数。
 构造函数:  给对应对象初始化的,建立对象时,选择相应的构造函数初始化对象。
 创建对象时,三者被加载执行顺序:静态代码块--->构造代码块--->构造函数
 
 //利用代码进行测试 例题:06--06:StaticCodeDemo.java
 class Person
 {
 private String name;
 private int age=0;
 private static String country="cn";
 Person(String name,int age)
 {
 this.name=name;
 this.age=age;
 }
 static
 {
 System.out.println("静态代码块被执行");
 }
 { System.out.println(name+"..."+age); }
 public void setName(String name)
 {
 this.name=name;
 }
 public void speak()
 {
 System.out.println(this.name+"..."+this.age);
 }
 public static void showCountry()
 {
 System.out.println("country="+country);
 }
 }
 class StaticDemo
 {
 static
 {
 System.out.println("StaticDemo 静态代码块1");
 }
 public static void main(String[] args)
 {
 Person p=new Person("zhangsan",100);
 p.setName("lisi");
 p.speak();
 Person.showCountry();
 }
 static
 {
 System.out.println("StaticDemo 静态代码块2");
 }
 }
 输出结果:
 StaticDemo 静态代码块1
 StaticDemo 静态代码块2
 静态代码块被执行
 null...0    //构造代码块
 lisi...100  //speak()
 country=cn  //showCountry()
 
 |