从错误信息来看,你的class名是TypeV,你运行的命令是
java f:\jp\TypeV.class
这是不对的,首先,
java命令后面的参数只能是类名(含包名),
其次,不用写.class
所以你可以执行这样两条命令:
cd f:\jp\
java -classpath %classpath;. TypeV
java f:\jp\TypeV.class
这是不对的,首先,
java命令后面的参数只能是类名(含包名),
其次,不用写.class
所以你可以执行这样两条命令:
cd f:\jp\
java -classpath %classpath;. TypeV
class A
{
String s="class:a";
}
class B extends A
{
String s="class:b";
}
class TypeV
{
public static void main(String args[])
{
B b1,b2=new B();
A a1,a2;
a1=(A)b2;
a2=b2;
System.out.println(a1.s);
System.out.println(a2.s);
b1=(B)a1;
System.out.println(b1.s);
}
}
java -cp F;\jp\TypeV
1.本人打的命令是java:\jp\TypeV
2.我按你说的做了也未果
楼上的“坚定信念”兄,大小写,我已经注意到了,这样的问题也太低级了吧
用命令javac TypeV.java执行,相信没有问题了
然后还在该目录下java TypeV执行!
是前不久,刚从sun网站上下载的
否则应该这样运行。java jp.TypeV 不应该用目录分隔苻,要用包分隔符。JAVA的包机制会找到的,否则不行。
可以不带public,和这个没有关系。
看一下你的环境变量
classpath=.;jdk安装路径\lib;
path=jdk安装路径\bin;然后你进入命令行:
进入你的class所在的目录
javac TypeV.java
java TypeV
一定可以的。
如:d:\java_test\,还有根目录,既: .\
Eeception in thread "main" java.lang.NoClassDefFoundError: f:\jp\TypeV/class
的错误,我无法重现你的错误!
的设置改下吧:path=C:\WINDOWS;C:\WINDOWS\COMMAND;c:\j2sdk1.4.0\bin;.
set classpath=c:\j2sdk1.4.0\src.jar;C:\jdk1.4.0\lib\dt.jar;C:\jdk1.4.0\lib\tools.jar;.