- final
父类加final,子类不能重写;类加final,子类不能继承
- 抽象方法和抽象类
抽象方法:使用abstract修饰的方法,没有方法体,只有声明,必须写在抽象类里。
子类必须实现父类的抽象方法。
- 接口的作用
接口与抽象类的区别:
接口就是比抽象类还抽象的抽象类,可以更加地规范子类,实现了:规范和具体实现的分离。
抽象类还提供某些具体实现,接口不提供任何实现,接口中所有的方法都是抽象方法。接口是完全面向规范的,规定了一批类具有的公共方法规范。
- 在Java中内部类主要分为成员内部类(非静态内部类、静态内部类)、匿名内部类、局部内部类。
内部类生成的类文件:外部类$内部类.class
关于非静态内部类:非静态内部类可以直接访问外部类的成员(Outter.this.age),但外部类不能访问非静态内部类成员;非静态内部类不能有静态成员方法等。
创建非静态内部类对象:Outer.Inner inner = new Outer().new Inner();
关于静态内部类:1.因为静态内部类存在,外部类不一定存在,所以静态内部类的实例方法不能直接访问外部类的实例方法。
2.静态内部类可以看作外部类的一个静态成员,因此外部类方法可以通过静态内部类.名字的方式访问静态内部类的静态成员。
创建非静态内部类对象:Outer.Inner inner = new Outer. Inner();
匿名内部类适合那种只需要使用一次的类。方法(new 类(接口))
- String为不可变字符序列
- 数组
数组的3个基本特点:
1.长度是确定的。
2.其元素必须是相同类型,不允许出现混合类型。
3.数组类型可以是任何数据类型,包括基本类型和引用类型。