Java最基本的问题--路径问题,请帮忙解答一下

niniu 2004-08-06 09:02:01
刚学Java,不想这么快用IDE,因此用UE+ j2sdk来做环境,写了一个测试多态的程序:

在 d:\PolyTest\下建了下面三个Java文件

//Father.java
public class Father
{
public String name;

public void changeName()
{
name = "Father";
}
}


//Son.java
public class Son extends Father
{
public void changeName()
{
name = "Son";
}
}

//PolyTest.java
public class PolyTest
{
public static void main(String argv[])
{
Father f;
Son s;

f = new Father();
f.changeName();
System.out.println("Father,Father : " + f.name);

s = new Son();
s.changeName();
System.out.println("Son,Son : " + s.name);

f = new Son();
f.changeName();
System.out.println("Father,Son : "+ f.name);

s = new Father();
s.changeName();
System.out.println("Son,Father : " + s.name);
}

}

将当前目录切换到PolyTest,执行下面的命令
javac Father.java
没有任何错误产生,顺利生成了Father.class

再执行:
javac Son.java,输出如下:
Son.java:6: cannot resolve symbol
symbol : class Father
location: class Son
public class Son extends Father
^
Son.java:10: cannot resolve symbol
symbol : variable name
location: class Son
name = "Son";
^
2 errors

为什么,问了人也看了书都说只要把目录切换到PolyTest编译就Ok,为什么不行
该怎么修改
...全文
132 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
niniu 2004-08-06
  • 打赏
  • 举报
回复
顺便说一句,恭喜mingjava(学习)加星
niniu 2004-08-06
  • 打赏
  • 举报
回复
我知道了
原来我是在UE下调用dos命令,
我现在在MSDOS下编辑没问题,我靠
niniu 2004-08-06
  • 打赏
  • 举报
回复
晕,哪是什么问题呢?
救命啊
mingjava 2004-08-06
  • 打赏
  • 举报
回复
在我的机器上没有任何问题 我测试过了

使用另外一个类你必须要import它并且有访问他的权限 当然如果在一个package里面就没有这个必要了

你现在就是在一个package里面 因此没有问题

niniu 2004-08-06
  • 打赏
  • 举报
回复
我现在想弄明白的问题是为什么编译Son.java的时候出错,也就是想知道怎么样使用另外一个class文件中的类
liyong33 2004-08-06
  • 打赏
  • 举报
回复
PolyTest.java:20: incompatible types
found : Father
required: Son
s = new Father();
^
1 error
niniu 2004-08-06
  • 打赏
  • 举报
回复
我的CLASSPATH设置是这样的:
D:\j2sdk1.4.2_04\lib\tool.jar;D:\j2sdk1.4.2_04\lib\dt.jar
我又加上了";."
同样也不行,还是旧毛病
niniu 2004-08-06
  • 打赏
  • 举报
回复
回catalina():
就是在编译Son类的时候出错的:
javac Son.java <<--------(编译Son.java),输出如下:
Son.java:6: cannot resolve symbol
symbol : class Father
location: class Son
public class Son extends Father
^
Son.java:10: cannot resolve symbol
symbol : variable name
location: class Son
name = "Son";
^
2 errors
mingjava 2004-08-06
  • 打赏
  • 举报
回复
在一个目录下绝对不会有问题的 我测试了可以编译

但是你的PolyTest.java里面有问题 s = new Father()是不能通过编译的

看看你的classpath没有设置错误把
catalina 2004-08-06
  • 打赏
  • 举报
回复
你的SON类没编译

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧