静态内部类
1.静态内部类可以等同看做静态变量
内部类重要的作用:可以访问外部类中私有的数据
2.静态内部类可以直接访问外部类的静态数据,无法直接访问成员数据.
静态内部类创建对象:
new 外部类名.静态内部类名();
成员内部类
1.成员内部类可以等同看做成员变量
2.成员内部类中不能有静态声明.
3.成员内部类可以访问外部类所有的数据.
成员内部类创建对象:
new 外部类名();
外部类引用对象.new 成员内部类名();
局部内部类等同于局部变量
局部内部类在访问局部变量的时候,局部变量必须使用final修饰。
局部内部类调用:在局部方法中创建对象后调用局部内部类,然后主方法直接调用局部方法。
匿名内部类:指的是类没有名字
匿名内部类的优点;少定义一个类.
缺点:无法重复 使用
定义一个实体类,实体类定义一个方法,方法的参数为接口对象,到时候会传入一个匿名类对象,这个匿名类实现了上述创建的接口,代码如下,还有两种方法没有写上。
public class Test{
public static void t(CustomerService cs){
cs.logout();
}
public static void main(string[] args){
//整个这个"new Customerservice(){}"就是个匿名内部类
t (new Customerservice () {
public void logout(){
System.out.println(“exit!”);
}
} );
}
interface Customerservice{
void logout() ;
}