我有以下代码创建一个抽象类,具体类扩展抽象类和main方法。没有错误,因为它在JGRASP中编译并运行良好。当我在eclipse中运行时,它只是没有运行,但没有产生错误。我将文件命名为Product.java。
以下是代码:
abstract class Product {
int value;
public Product(int val) {
value = val;
}
abstract public int multiply(int n);
}
class TimesTwo extends Product {
public TimesTwo(int val) {
super(val);
}
@Override
public int multiply(int n) {
return value * n;
}
public static void main(String[] args) {
TimesTwo two = new TimesTwo(5);
System.out.println(two.multiply(5));
}
}
我也尝试在命令行上运行:
javac Product.java
我得到Product.class
和TimesTwo.class
当我跑的时候
Java TimesTwo.class
或Java Product.class
我得到Exception in thread "main" java.lang.NoClassDefFoundError:
答案 0 :(得分:3)
在TimesTwo.java
中运行之前,请确保Eclipse
作为单独的Java源文件存在。
答案 1 :(得分:0)
您应该将TimesTwo
更改为public class
并尝试运行如下命令:
java TimesTwo
运行类
时,结尾没有.class