如果定义一个匿名内部类,并且希望它使用一个在其外部定义的外部对象,那么编译器会要求其参数引用是final的。例子如下:
public class Parcel9{ //此处的String必须使用final修饰 public Destination destination(final String dest){ //此处的匿名内部类指的是:创建一个继承自Destination的匿名类的对象。 return new Destination(){ private String label = dest; public String readLabel(){return label;} }; } public static void main(String[] args){ Parcel9 p = new Parcel9(); Destinantion d = p.destination("aaaaa"); }}