第八章接口和内部类1.接口(1)纯粹的抽象类,所有方法都是抽象方法(2)关键字:interface(3)接口中的方法默认都是public的(4)接口可以继承,interfaceI1extendsI2(5)接口可以多继承,interfaceI1extendsI2,I3(6)类可以继承多个接口,使用implements关键字classC1extendsC2implementsI1,I2(7)接口的一个用法:枚举(8)接口可以嵌套interfaceIA{interfaceIB{}}2.内部类(1)定义在类型内部的类,包括类的内部、方法的内部classCA{classCB{}}//CB就叫做CA的内部类(2)类和方法内可出现的关键字:classpublic,protected,private,(friendly),abstract,static,finalmethodabstract,final,static(3)匿名类:没有名称的类用途之一:为某个对象指定特定的行为(方式:重写类方法)(4)链接到外部类外围类:我们把包括内部类定义的类叫做该内部类的外围类内部类可以访问外围类的所有成员(包括私有的)(5)嵌套类嵌套类:又叫作内部静态类(staticclass)如果不需要内部类对象与其外围类对象之间有联系,则加上static关键字,将内部类定义为嵌套类。意味着:a)要创建嵌套类的对象,不需要其外围类的对象b)不能从嵌套类的对象中访问非静态的外围类对象(6)引用外围类的对象外围类名.this获得外围类对象的引用(7)从多层嵌套类中访问外围类的成员.操作符(8)内部类的继承(9)内部类可以被覆盖吗(10)局部内部类:代码块(方法里)中的内部类(11)内部类标识符:编译成class文件后,内部类的文件名命名方式:OuterClass$InnerClass.class,匿名时OuterClass$1.class