1、静态内部类:在一个类里面用static修饰
2、实例内部类:在一个类里面没有static修饰
3、局部内部类:在类的方法里面,方法调用结束后类就消失
匿名内部类是局部内部类的一个特殊的形式,没有类名。
public class innerClass {
public static void main(String[] args) {
myMyth mm=new myMyth();
//普通写法
mm.mySum(new computeImpl(),100,200);
//匿名类写法
mm.mySum(new compute() {
@Override
public int sum(int a, int b) {
return a+b;
}
},400,500);
}
}
interface compute{
int sum(int a,int b);
}
class computeImpl implements compute{
@Override
public int sum(int a, int b) {
return a+b;
}
}
class myMyth{
public void mySum(compute c,int a,int b){
int result= c.sum(a,b);
System.out.println(result);
}
}