美瞳线晕色都不会掉吗:(在线等)求高手指点一个关于JAVA的问题

来源:百度文库 编辑:高校问答 时间:2024/04/25 00:09:41
代码如下:
//Note.java
package c07.music;

public class Note{
private String noteName;
private Note(String noteName){
this.noteName=noteName;
}
public String toString(){return noteName;}

public static final Note
MIDDLE_C =new Note("Middle_c"),
C_SHARP=new Note("C_Sharp"),
B_FLAT=new Note("B_Flat");
}
//编译成功

//Instrument.java
package c07.music;

public class Instrument {
public void play() {}
public void tune(Instrument i) {
//i.play(Note i);
i.play();
}
}
//编译成功
//Wind.java
package c07.music;

public class Wind extends Instrument{
public void play(Note n){
System.out.println("Wind.play()"+n);
}
}
//编译成功

package c07.music;
//Music.java
public class Music{
public static void tune(Wind i){
i.play(Note.MIDDLE_C);
}
public static void main(String[] args){
Wind flute=new Wind();
tune(flute);
}
}
//编译成功
java Music失败:信息如下
Exception in thread "main" java.lang.NoClassDefFoundError: Music (wrong name: c0
7/music/Music)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)

应该将整个包内所有java文件一起编译
将4个java文件都放在 c07\music\ 目录之下

在命令行进入c07 的父目录下,运行:

作为一个包,最好是: javac -d . c07\music\*.java (!注意-d后面加空格再加一个点(表示当前目录)再空格,千万不能少)

假如不行,可以试一下: javac -cp . c07\music\*.java

运行Music: java c07.music.Music

确定以上四个类文件都放在c07目录的父目录中.
以下操作都是在c07目录的父目录下执行:

javac -d . *.java回车

java c07.music.Music回车

如我把四个类文件都放在c:\java里,则执行
c:\java>javac -d . *.java回车
c:\java>java c07.music.Music回车

怎么回事