/*静态代码块。随着类的加载而执行。而且只执行一次。作用: 用于给类进行初始化。*/class StaticCode{ static int num ; static { num = 10;// num *=3; System.out.println("hahahah"); } StaticCode(){} static void show() { System.out.println(num); }}class Person{ private String name; { //构造代码块。可以给所有对象进行初始化的。 System.out.println("constructor code ");// cry(); } static //静态代码块。随着类的加载而执行。而且只执行一次。 { //作用:用于给类进行初始化。 System.out.println("static code"); } Person()//是给对应的对象进行针对性的初始化。 { name = "baby";// cry(); } Person(String name) { this.name = name;// cry(); } public void cry() { { //局部代码块 int x = 10; //只在局部代码块中有效 } System.out.println("哇哇"); } public void speak() { System.out.println("name:"+name); } static void show() { System.out.println("show run"); }}class StaticCodeDemo { static {// System.out.println("a"); } public static void main(String[] args) {// Person p = null;// p.speak();// Person.show();// Person p1 = new Person();// p1.speak();// Person p2 = new Person("旺财");// p2.speak();// new Person(); // new StaticCode().show();// new StaticCode().show();// StaticCode.show();// System.out.println("b"); }}