final修饰符修饰类、变量和方法注意:表示该变量一旦获得了初始值就不可被改变当final修饰的实例成员变量,它能初始化的地方:a、直接赋值b、构造器c、初始化块当final修饰的类成员变量,它能初始化的地方:a、直接赋值b、静态初始化块final修饰的方法,此方法不可被子类重写
抽象类语法:abstract class 类名{//抽象方法abstract 返回值 方法名(参数列表);}抽象类特点:a、有抽象方法的类,此类必须是抽象类b、抽象类不一定所有方法都是抽象方法c、抽象类不能实例化d、继承抽象类的子类必须实现抽象类定义的所有抽象方法
接口语法定义:修饰符 interface 接口名{//常量//抽象方法//内部接口}接口特点:1、支持多接口实现2、接口支持多继承
内部类public class OuterClass{修饰符 class InnerClass{}}修饰符:public、protected、default、privatestatic、final、abstract内部类注意事项:a、内部类的对象是依赖于外部类的对象而存在,因此内部类的行为方法可以直接访问外部类的元素。b、外部类的对象不依赖于内部类的对象,因此外部类的方法不可以直接访问内部类的元素。c、非静态内部类是不允许有静态方法new OuterClass().new InnerClass().innerFunc();new OuterClass.InnerClass().innerFunc();OuterClass.InnerClass.innerFunc();局部内部类方法内定义内部类void func(){class InnerClass{}}
匿名内部类new 父类构造器(实参列表) | 实现接口(){//匿名内部类的类体部分}
JAVA疯狂讲义JAVA编程思想第四版 JAVA核心技术第9版(级、高)