关于安卓ViewHolder的使用

安卓新手一枚,经常看到别人使用ViewHolder的时候用static class ViewHolder,最先以为这样只会在内存创建一个对象,减少内存使用。
今天试着去创建了两个对象,并打了下log发现两个地址并不一样。那使用静态类的意义何在呢?还是我理解的不对,
求大神解惑

java中堆栈内存:一个对象的指针被占有,对象是无法销毁的
个人理解:ViewHolder持有ui控件的指针,activity要销毁,但是activity中的ui控件的指针被占有(可以看做viewholder 持有activity 的堆内存地址),activity是无法销毁的。这就造成了内存溢出
ViewHolder不加修饰符 static,那便是隐式外部类

我也是一个新手,我把我理解的告诉你,首先static这个修饰词,并不表示只能创建一个对象,有他修饰的类和一般类的不同之处在于有他修饰的类存放在内存的区域与一般的类不同。具有只能创建一个的功能的关键词是final,而final修饰一个类表示这个类不能被继承。而我们经常使用static这个修饰词来修饰一个工具类,而后通过直接使用类名.方法名来直接调用这个类的静态方法,而不需要先创建这个类。

只会在内存创建一个对象,这个应该是单例模式实现的,不是加一个static就行的
static 修饰的变量应该是一直在内存中存在的,不会被自动回收,静态类是不是这样就不知道了,我也是个菜鸟
你可以搜一下static了解了解,再搜搜静态内部类了解了解