有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

如何使用在不同包层次结构中具有子类的类运行Java程序?

我有两门课,比如:

Class GetData is like:

package com
public class GetData{
private String name = "John";
public String getName(){
    return name;
  }
}

package com.test;
import com.GetData;

public class Test{
   public static void main(String args[])
   {
       GetData data = new GetData();
       System.out.println("Welcome "+data.getName());
   }
}

当我试图编译测试类时,它抛出一个类似于undefined symbol的错误。我试着说:

javac -cp .com/GetData.class Test.java

请帮帮我


共 (2) 个答案

  1. # 1 楼答案

    问题在于如何运行代码。只需使用eclipse运行即可,运行方式为->;Java应用程序,如果您不确定如何通过命令控制台运行

  2. # 2 楼答案

    问题在于如何指定类路径。您只需要指定包含类的目录的根目录,因此如果您有com/GetData.class,您只需要:

    javac -cp . Test.java
    

    虽然您应该在目录层次结构中拥有与包匹配的源代码,所以我希望

    javac -cp . com/test/Test.java
    

    然后运行:

    javac -cp . com.test.Test
    

    所有这些都是假设.不在类路径上,默认情况下是这样,所以您可能会发现您可以使用:

    javac com/test/Test.java
    java com.test.Test