final 的使用

public class Test3 {
	static String a = "aa";

	public static void main(String[] args) {
		final String b = "dd";
		final String c = "cc";
		new C() {
			@Override
			void m() {
				// TODO Auto-generated method stub
				System.out.println(b);
				System.out.println(a);
			}
		};
	}

	static abstract class C {
		abstract void m();
	}
}
  import java.io.PrintStream;
public class Test3
{
  static String a = "aa";

  public static void main(String[] args) {
    String b = "dd";
    String c = "cc";
    new C()
    {
      void m()
      {
        System.out.println("dd");
        System.out.println(Test3.a);
      }
    };
  }

  static abstract class C
  {
    abstract void m();
  }
}

 

方法内部 是不支持 final 的,这样写只是编译器为了把它当做一种常亮直接给内部类用。

 

你可能感兴趣的:(final)