我意识到这个问题可能已被多次提出,但我找不到任何对我有用的答案。
我正在从编码物理手册中学习Java编码的基础知识。该手册包括绘制数据的源代码:
https://physics.weber.edu/schroeder/javacourse/Plot.java.txt
我已将其保存为Plot.java,并将其编译在我正在使用的文件夹中。手册告诉我使用以下代码:
Plot myPlot = new Plot("Plot of y vs. x",0,10,1,-1.5,1.5,0.5);
但是当我尝试编译代码时,我收到一条错误,指出无法找到Plot符号。
那么如何在我的代码中使用Plot类?我可以导入它吗?如果是这样,怎么样?
编辑:
以下是该计划的代码:
package rangeplot;
class RangePlot {
RangePlot(double speed) {
Plot myPlot = new Plot("range vs angle",
0,90,1,0,45,1);
myPlot.addPoint(angle,range);
}
}
确切的错误讯息:
RangePlot.java:7: error: cannot find symbol
Plot myPlot = new Plot("range vs angle",
^
symbol: class Plot
location: class RangePlot
我试过了:
- 在编译之前在Plot.java的顶部添加package rangeplot;
。
- 在RangePlot.java文件的顶部添加import Plot;
。
错误保持完全相同。这两个文件都位于名为rangeplot的文件夹中。
答案 0 :(得分:2)
解决问题的一种方法:
在Plot.java
的开头添加此行:
package rangeplot;
这意味着Plot
和Rangeplot
现在位于同一个包中,彼此可见。
另一种方法是将Plot.java
添加到任何其他包或新创建的包中。要实现它,请创建新的包,例如名称为plot
,并在Plot.java
的开头添加此行:
package plot;
如果您选择了我的第二个选项,那么您必须返回Rangeplot.java
并添加一行:
import plot.*;
如果您不执行上述任何步骤,则Rangeplot
包含在rangeplot
个包中,Plot
位于默认包中,这意味着{ {1}}在任何其他软件包中都不可见,更重要的是 - 它无法导入(使用默认包中包含的文件的导入是不可能的) - 这就是我建议你创建自己的新包的原因。
答案 1 :(得分:0)
可能你必须在你放置的地方添加包裹(如:)
package com.my.study;
在代码之上。