代码似乎超出范围,如何解决? (Simple Queue-ADT程序)
Code seems out-of-scope, How to fix? (Simple Queue-ADT program)
我不确定如何准确解释这个问题,但我很确定我犯了一个非常简单的错误,可以很快纠正。
另外,我认为如果将其显示为屏幕截图会更方便。前两个选项卡是我的界面和错误捕获 类.
如您所见,在我的队列 ADT 中使用的方法代码似乎超出了范围。所以我可以继续完成这部分课程作业,有人可以向我解释为什么它超出范围吗?
感谢您的帮助!
您在 main
方法中声明了这些变量,因此只有 main
本地范围知道它们。将声明移动到 class 级别
public class QueueProgram {
private static int queuesize = 10;
public static void main(String[] args) {
}
}
注意我将 queuesize
声明为 static
因为 main
使用它。另一种选择是创建 getters
和 setters
并使用 QueueProgram
的实例调用它们
public class QueueProgram {
private int queuesize = 10;
public int getQueuesize() {
return queuesize;
}
public void setQueuesize(int size) {
queuesize = size;
}
public static void main(String[] args) {
QueueProgram program = new QueueProgram();
program.getQueuesize(); // return 10;
program.setQueuesize(5);
program.getQueuesize(); // now it is 5;
}
}
我不确定如何准确解释这个问题,但我很确定我犯了一个非常简单的错误,可以很快纠正。 另外,我认为如果将其显示为屏幕截图会更方便。前两个选项卡是我的界面和错误捕获 类.
如您所见,在我的队列 ADT 中使用的方法代码似乎超出了范围。所以我可以继续完成这部分课程作业,有人可以向我解释为什么它超出范围吗?
感谢您的帮助!
您在 main
方法中声明了这些变量,因此只有 main
本地范围知道它们。将声明移动到 class 级别
public class QueueProgram {
private static int queuesize = 10;
public static void main(String[] args) {
}
}
注意我将 queuesize
声明为 static
因为 main
使用它。另一种选择是创建 getters
和 setters
并使用 QueueProgram
public class QueueProgram {
private int queuesize = 10;
public int getQueuesize() {
return queuesize;
}
public void setQueuesize(int size) {
queuesize = size;
}
public static void main(String[] args) {
QueueProgram program = new QueueProgram();
program.getQueuesize(); // return 10;
program.setQueuesize(5);
program.getQueuesize(); // now it is 5;
}
}