1final:
final是java中的一个关键字,意思为“恒定不变”。java中final数据具体有两个含义:1、对于基本数据类型,表示永不改变的编译时常量;2、对于普通对象,表示该引用恒定不变,不能指向另外一个对象,但是该对象本身是可以进行修改的。
2内部类:
非静态内部类
非静态内部类是一个类中嵌套着另外一个类。 它有访问外部类成员的权限, 通常被称为内部类。
由于内部类嵌套在外部类中,因此必须首先实例化外部类,然后创建内部类的对象来实现。
私有的内部类
内部类可以使用 private 或 protected 来修饰,如果你不希望内部类被外部类访问可以使用 private 修饰符:
静态内部类
静态内部类可以使用 static 关键字定义,静态内部类我们不需要创建外部类来访问,可以直接访问它:
3引用类型的介绍:
java的引用类型的详细介绍
强引用(FinalReference),在java中,有点像C++的指针,通过引用,可以对堆中的对象进行操作。强引用具备以下特点:
1.强引用可以直接访问目标对象;
2.强引用所指向的对象在任务时候都不会被系统回收;
3.强引用可能导致内存泄露。
软引用(SoftReference),软引用对象,在响应内存需要时,由垃圾回收器决定是否清除此对象。一个持有软件引用的对象,不会被JVM很快回收,只要有足够的内存,软件引用便可能在内存中存活相当长的时间,软引用对象最常用于实现内存敏感的缓存;弱引用(WeakReference),弱引用是一种比较弱的引用类型,在系统GC时,只要发现弱引用,不管系统堆内存是否足够,都会将对象回收;
•虚引用(PhantomReference),虚引用是所有引用最弱的一个,一个持有虚引用的对象,和没有引用几乎是一样的,随时都可能被垃圾回收器回收。