多嵌套类Java
嗨,我有一个类,里面有多层嵌套类,我想知道为什么它不工作。由于某些原因,我无法创建新的StackNode,我想知道为什么会这样多嵌套类Java,java,class,Java,Class,嗨,我有一个类,里面有多层嵌套类,我想知道为什么它不工作。由于某些原因,我无法创建新的StackNode,我想知道为什么会这样 public class MultiStack { Stack1[] arr; int lim,numplate,index; MultiStack(int limit, int total) { lim = limit; numplate = total; int ssize =0;
public class MultiStack {
Stack1[] arr;
int lim,numplate,index;
MultiStack(int limit, int total) {
lim = limit;
numplate = total;
int ssize =0;
if(total%lim==0) {
ssize = total/lim;
} else {
ssize = (total/lim) +1;
}
arr = new Stack1[ssize];
}
class Stack1 {
StackNode top;
int size;
class StackNode{
StackNode next;
int value;
}
}
public void push(int value){
if(arr[index].size < lim) {
push1(index);
}
}
public void push1(int index) {
arr[index].size++;
StackNode cur = new StackNode(); //here is my issue
cur.next = arr[index].top;
arr[index].top = cur;
}
}
公共类多级存储{
Stack1[]arr;
int lim,numplate,index;
多批次(整数极限,整数总计){
lim=极限;
numplate=总数;
int-ssize=0;
如果(总的%lim==0){
ssize=总计/lim;
}否则{
ssize=(总计/lim)+1;
}
arr=新堆栈1[ssize];
}
第1类{
堆栈节点顶部;
整数大小;
类堆栈节点{
StackNode-next;
int值;
}
}
公共无效推送(int值){
if(arr[index]。大小
类Stack1
和类StackNode
都不是静态的
因此,您需要一个周围类的实例来实例化它
当您尝试实例化类StackNode
时,您处于一个MultiStack
的对象中:
public void push1(int index) {
arr[index].size++;
Stack1.StackNode cur = new Stack1().new StackNode(); // here is my issue
cur.next = arr[index].top;
arr[index].top = cur;
}
类
Stack1
和类StackNode
都不是静态的
因此,您需要一个周围类的实例来实例化它
当您尝试实例化类StackNode
时,您处于一个MultiStack
的对象中:
public void push1(int index) {
arr[index].size++;
Stack1.StackNode cur = new Stack1().new StackNode(); // here is my issue
cur.next = arr[index].top;
arr[index].top = cur;
}
你能详细说明“不工作”吗?另外,你知道吗?它不允许我创建一个新的StackNode()你能详细说明“不工作”吗?另外,你知道吗?它不允许我创建一个新的StackNode()