Java 在其中创建静态嵌套类的实例
这与 为什么静态内部类节点允许类中的Java 在其中创建静态嵌套类的实例,java,inner-classes,nested-class,Java,Inner Classes,Nested Class,这与 为什么静态内部类节点允许类中的新节点[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 tr
新节点[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];
}
...
}
公共类TrieST{
私有静态final int R=256;//扩展ASCII
私有节点根;//trie的根
private int N;//trie中的密钥数
//双向三节点
私有静态类节点{
私有对象val;
私有节点[]下一个=新节点[R];
}
...
}
x=新节点();//在包含的类中没有问题,但是静态嵌套节点类中的新节点[R]不清楚。行
private Node[] next = new Node[R];
声明并初始化作为数组引用的字段next
(应将Node[]
读为“Node
array”)。表达式newnode[R]
不创建任何节点,而是创建一个节点数组。所以没有递归
如果你有这样一个领域
private Node someNode = new Node();
实际上,您将有一个递归,因为每个节点将创建另一个节点,该节点将创建下一个节点,依此类推
private Node[] next = new Node[R];
声明并初始化作为数组引用的字段next
(应将Node[]
读为“Node
array”)。表达式newnode[R]
不创建任何节点,而是创建一个节点数组。所以没有递归
如果你有这样一个领域
private Node someNode = new Node();
实际上,您将有一个递归,因为每个节点将创建另一个节点,该节点将创建下一个节点,依此类推
private Node[] next = new Node[R];
声明并初始化作为数组引用的字段next
(应将Node[]
读为“Node
array”)。表达式newnode[R]
不创建任何节点,而是创建一个节点数组。所以没有递归
如果你有这样一个领域
private Node someNode = new Node();
实际上,您将有一个递归,因为每个节点将创建另一个节点,该节点将创建下一个节点,依此类推
private Node[] next = new Node[R];
声明并初始化作为数组引用的字段next
(应将Node[]
读为“Node
array”)。表达式newnode[R]
不创建任何节点,而是创建一个节点数组。所以没有递归
如果你有这样一个领域
private Node someNode = new Node();
然后确实会有一个递归,因为每个节点都会创建另一个节点来创建下一个节点,依此类推。您在哪里看到无限递归,为什么会发生?
new node[]
只是初始化数组。它不创建R
节点对象。通过新建节点[R]
创建嵌套类的实例时。原因是它是静态的,那么为什么可以通过new?@Prakhar创建节点的新实例,只创建一个大小为256的数组,其中256个元素为空。递归不可能发生。旁注:“扩展ASCII”不是编码的精确定义。如果您试图表示一种特定的编码,您应该说明它是什么。您在哪里看到无限递归以及为什么会发生这种情况?newnode[]
只是初始化数组。它不创建R
节点对象。通过新建节点[R]
创建嵌套类的实例时。原因是它是静态的,那么为什么可以通过new?@Prakhar创建节点的新实例,只创建一个大小为256的数组,其中256个元素为空。递归不可能发生。旁注:“扩展ASCII”不是编码的精确定义。如果您试图表示一种特定的编码,您应该说明它是什么。您在哪里看到无限递归以及为什么会发生这种情况?newnode[]
只是初始化数组。它不创建R
节点对象。通过新建节点[R]
创建嵌套类的实例时。原因是它是静态的,那么为什么可以通过new?@Prakhar创建节点的新实例,只创建一个大小为256的数组,其中256个元素为空。递归不可能发生。旁注:“扩展ASCII”不是编码的精确定义。如果您试图表示一种特定的编码,您应该说明它是什么。您在哪里看到无限递归以及为什么会发生这种情况?newnode[]
只是初始化数组。它不创建R
节点对象。通过新建节点[R]
创建嵌套类的实例时。原因是它是静态的,那么为什么可以通过new?@Prakhar创建节点的新实例,只创建一个大小为256的数组,其中256个元素为空。递归不可能发生。旁注:“扩展ASCII”不是编码的精确定义。如果您试图表示一种特定的编码,您应该说明它是什么。