静态代码块
public class staticdemo01 { { System.out.println("匿名代码块"); } static { System.out.println("静态代码块"); } public staticdemo01() { } public static void main(String[] args) { staticdemo01 s1 = new staticdemo01(); System.out.println("========================="); staticdemo01 s2 = new staticdemo01(); } } 静态代码块执行一次 和类一起加载 匿名代码块在构造器前 静态后 加载多次 new一个加载一次 点击静态导入包查看更多
内部类
public class Outer { public int i = 0 ; public void out(){ System.out.println("outer"); } public class Iner{ public void in(){ System.out.println("iner"); } public void getI(){ System.out.println(i); } } } Outer out = new Outer(); Outer.Iner iner = out.new Iner(); iner.in(); iner.getI();
静态内部类
加一个 static
内部外部类
public class a{ } class b{ }
局部内部类
public class a{ public void fun(){ class b{ } } }
匿名内部类
public class a{ new b().fun() } class b{ fun() }
匿名接口
public class a{ new b(){ 实现接口 返回b实现类 } } interface b{ fun(); }
点击内部类详解查看更多