定义静态代码程序段
package cn; public class Object4 { public static void main(String[] args) { Object4 ob1 = new Object4(); Object4 ob2 = new Object4(); Object4 ob3 = new Object4(); Object4 ob4 = new Object4(); } //静态程序段,第一次实例化,会自动执行 static { System.out.println("静态程序段,第一次实例化,会自动执行,多次实例化仅执行一次"); } //初始化程序段,每次实例化,都会执行 { System.out.println("初始化程序段,每次实例化,都会执行"); } //构造方法 public Object4() { System.out.println("构造方法.jpg"); } { System.out.println("初始化程序段***2"); } static { System.out.println("这是第二个静态程序段"); } }
static静态方法
可以静态引入,可以不实例化,直接通过类名.方法命调用
静态方法调用非静态方法需要实例化
非静态方法调用静态方法可以直接调用
package cn; public class Object1 { static void m1() { int i = 30; System.out.println(i); } }
package cn; public class Object4 { public static void main(String[] args) { Object1.m1(); ob4(); } static void ob4() { System.out.println("静态方法"); } }