匿名内部类相当于对接口(抽象类)的实现
匿名内部类
匿名内部类也是用的最多的内部类
可以写成成员变量的形式,也可以写在方法当中,一般写在方法当中较多
匿名内部类里可以访问外部类的普通属性和方法,已经静态属性和方法
如果要访问这个内部类所在方法中的局部变量,那么要求这个局部变量必须是final修饰的(JDK1.8不用)
匿名内部类里面没有构造函数,因为这个类没有名字,所以在其他地方不能用
public abstract class NimingInClass {
public static long a;
public String c;
public abstract void AA();
public abstract void BB();
public static void test(){
System.out.println(“外部类下的静态方法”);
}
public void test1(){
System.out.println(“外部类的非静态方法”);
}
public static void main(String[] args) {
}
public void CC() {
// TODO Auto-generated method stub
}
}
//结束
package com.neibu;
public class Test{
public static void main(String[] args) {
NimingInClass nc=new NimingInClass(){
int cc=10;
private int a;
@Override
public void AA() {
// TODO Auto-generated method stub
a=100;
c="1236546";
System.out.println(a+c);
//CC();
}
@Override
public void BB() {
// TODO Auto-generated method stub
}
//此处的不是接口提供的,需要在父类中
public void CC() {
// TODO Auto-generated method stub
System.out.println(a+c);
}
//System.out.println("");
};
nc.AA();
nc.CC();
System.out.println("");
}
}