我刚刚开始使用Java。我正在使用NetBeans,在我的.pkg1文件中,我有两个.java文件。顺便说一句,我正在开设关于算法的Coursera课程,所以我的代码引用了:
CourseraAlgorithmsWeek1.java
package coursera.algorithms.week.pkg1;
public class CourseraAlgorithmsWeek1 {
public static void main(String[] args) {
QuickFindUF mystuff(10); // DOES NOT WORK!
}
}
QuickFindUF.java
public class QuickFindUF {
private int[] id;
public QuickFindUF(int N){
id = new int[N];
for(int i =0; i< N; i++){
id[i] = i;
}
}
}
我的问题是我的main函数中的第一行无法识别QuickFindUF对象的创建。我读到我需要将第二个文件编译成.class文件,然后编译成.jar文件。我怎么能用netbeans做到这一点?
我还读了一下关于Classpath的内容。我可以只将.jar文件添加到类路径吗?
答案 0 :(得分:7)
变化
QuickFindUF mystuff(10);
到
QuickFindUF mystuff = new QuickFindUF(10);
答案 1 :(得分:1)
通过添加
将QuickFindUF.java
移至主类的同一个包中
package coursera.algorithms.week.pkg1;
在课前定义。
答案 2 :(得分:1)
您也可以将目录添加到类路径中。你可以做点什么
export CLASSPATH = "."
,这将包括您当前所在的目录。这应该允许您编译和执行该目录中的代码。
如果类路径设置正确,您可以通过在页面顶部添加此声明将QuickFindUF类移动到coursera.algorithms.week.pkg1包中:
package coursera.algorithms.week.pkg1;
或者,您可以使用声明导入该类:
import coursera.algorithms.week.pkg1.CourseraAlgorithmsWeek1;
答案 3 :(得分:0)
1。使用Composition
。
QuickFindUF q = new QuickFindUF();
q.mystuff(10);