gpt4 book ai didi

java - 在其中创建静态嵌套类的实例

转载 作者:行者123 更新时间:2023-12-01 22:12:41 26 4
gpt4 key购买 nike

这与 Declaring an instance of a class inside that class 相关

为什么静态内部类 Node 允许在类中使用 new Node[R] 字段,以及为什么这里没有发生无限递归?

public class TrieST<Value> {
private static final int R = 256; // extended ASCII


private Node root; // root of trie
private int N; // number of keys in trie

// R-way trie node
private static class Node {
private Object val;
private Node[] next = new Node[R];
}
...
}

x = 新节点();//在包含类中没问题,但静态嵌套 Node 类中的 new Node[R] 不清楚。

最佳答案

线路

private Node[] next = new Node[R];

声明并初始化字段next,它是一个数组引用(您应该将Node[]读作“Node数组”)。表达式 new Node[R] 不会创建任何节点,它会创建一个节点数组。所以不存在递归。

如果您有一个字段,例如

private Node someNode = new Node();

那么确实会出现递归,因为每个节点都会创建另一个节点,该节点又创建下一个节点,依此类推。

关于java - 在其中创建静态嵌套类的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31579450/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com