JAVA如何获取嵌套在静态LIST类中的静态LIST类

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA如何获取嵌套在静态LIST类中的静态LIST类相关的知识,希望对你有一定的参考价值。

比如我有个类,里面有个LIST<A> A;有getLIst<A>();然后这个static A里包含一个LIST<B>,有着getList<B>();现在我想调用这个getList<B>里拿到static B里的字段,要怎么做??

list<A>.get(position).get(position) 可以得到static B
如果需要获取list<B> 则使用list<A>.get(position).getList<B>()
参考技术A 在List<a>中直接 A.getList<B>可以吗

java内部类的静态嵌套类

参考技术A

静态内部类中可以定义静态或者非静态的成员。
从技术上讲,静态嵌套类不属于内部类。因为内部类与外部类共享一种特殊关系,更确切地说是对实例的共享关系。而静态嵌套类则没有上述关系。它只是位置在另一个类的内部,因此也被称为顶级嵌套类。
静态的含义是该内部类可以像其他静态成员一样,没有外部类对象时,也能够访问它。静态嵌套类仅能访问外部类的静态成员和方法。
class Outer
static class Inner

class Test
public static void main(String[] args)
Outer.Inner n = new Outer.Inner();


在静态方法中定义的内部类也是StaticNested Class,这时候不能在类前面加static关键字,静态方法中的StaticNested Class与普通方法中的内部类的应用方式很相似,它除了可以直接访问外部类中的static的成员变量,还可以访问静态方法中的局部变量,但是,该局部变量前必须加final修饰符。
为什么需要内部类
典型的情况是,内部类继承自某个类或实现某个接口,内部类的代码操作创建其的外围类的对象。所以你可以认为内部类提供了某种进入其外围类的窗口。使用内部类最吸引人的原因是:
每个内部类都能独立地继承自一个(接口的)实现,所以无论外围类是否已经继承了某个(接口的)实现,对于内部类都没有影响。如果没有内部类提供的可以继承多个具体的或抽象的类的能力,一些设计与编程问题就很难解决。从这个角度看,内部类使得多重继承的解决方案变得完整。接口解决了部分问题,而内部类有效地实现了“多重继承”。

以上是关于JAVA如何获取嵌套在静态LIST类中的静态LIST类的主要内容,如果未能解决你的问题,请参考以下文章

java 静态变量list的问题

Core java for impatient 笔记

关于java静态变量取值的问题。

单例对象是否符合垃圾回收条件?类中的静态字段如何收集垃圾?

如何初始化对类内变量的静态引用,以便在嵌套类中使用

java非静态内部类中的属性this$0