package com.st.hw;
class Dog{
public Dog(String color){
System.out.println("this is a" + color + " dog");
}
}
public class PetDog extends Dog { PetDog(String color){
super("black");
System.out.println("this is a" + color + " dog");
} public static void main(String[] args) {
PetDog petDog = new PetDog("black");
}
}在eclipse里面运行却出错误。随便写个程序都出同样的错误 ,怎么回事?
java.lang.NoClassDefFoundError: com/st/hw/PetDog
Caused by: java.lang.ClassNotFoundException: com.st.hw.PetDog
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
Exception in thread "main"
class Dog{
public Dog(String color){
System.out.println("this is a" + color + " dog");
}
}
public class PetDog extends Dog { PetDog(String color){
super("black");
System.out.println("this is a" + color + " dog");
} public static void main(String[] args) {
PetDog petDog = new PetDog("black");
}
}在eclipse里面运行却出错误。随便写个程序都出同样的错误 ,怎么回事?
java.lang.NoClassDefFoundError: com/st/hw/PetDog
Caused by: java.lang.ClassNotFoundException: com.st.hw.PetDog
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
Exception in thread "main"
你重新build一下,再运行应该OK了
public Dog(String color){
System.out.println("this is a" + color + " dog");
}
}
class PetDog extends Dog { PetDog(String color){
super("black");
System.out.println("this is a" + color + " dog");
} public static void main(String[] args) { PetDog petDog = new PetDog("black");
}
}
应该是你的项目设置的问题
新建项目试试,先建一个package com.st.hw;
然后再在它下面建一个PetDog类,把程序贴进去。
运行如果找不到类,不是看是否有java文件,应该去对应的目录查找是否有class文件。
如果是默认创建的eclipse项目,那么到项目下面的bin目录下面去找class文件。