一个新手特愚蠢+简单的问题 急

时间:2022-09-13 20:13:22
我是个JAVA新手,刚刚学习到有关类方面的东西,遇到一个奇怪的问题,
比如,

我声明一个自己的类Account如下:
public class Account {
private double balance = 0; //存款余额

//向帐户中存款,存款金额为amount
public void deposit( double amount ) {
balance = balance + amount;
}

//从帐户中取款,取款金额为amount;取款成功返回true,否则返回false
public boolean withdraw( double amount ) {
if ( amount <= balance ) {
balance = balance - amount;
return true;
}
else return false;
}

//查询帐户的当前余额
public double getBalance() {
return balance;
}
}

又声明了一个包含main的一个主类:
public class Bank {
public static void main( String[] args ) {

//张三开一个银行帐户
Account zhang3 = new Account();
//张三存500 取00
zhang3.deposit( 500 );
if ( ! zhang3.withdraw( 100 )) System.out.println("余额不足");
//为李四开个帐户
Account li4 = new Account();
//张三从帐户取150元存入李四帐户
if ( ! zhang3.withdraw( 150 )) System.out.println("余额不足,转帐失败!");
else li4.deposit( 150 );
//查询张三和李四的帐户余额
System.out.println("张三余额为" + zhang3.getBalance());
System.out.println("李四余额为" + li4.getBalance());
}
}

可问题就出现了!我该如何用javac去编译这段程序呢?书上写,把两个文件都放在一个文件夹中,然后先编译自己的类Account然后再编译Bank类!...Account类是顺利的用javac编译成了,可Bank主运行类却提示错误,大概的意思是找不到相关的声明:

G:\Bank>javac Bank.java
Bank.java:5: cannot resolve symbol
symbol  : class Account
location: class Bank
                Account zhang3 = new Account();
                ^
Bank.java:5: cannot resolve symbol
symbol  : class Account
location: class Bank
                Account zhang3 = new Account();
                                     ^
Bank.java:10: cannot resolve symbol
symbol  : class Account
location: class Bank
                Account li4 = new Account();
                ^
Bank.java:10: cannot resolve symbol
symbol  : class Account
location: class Bank
                Account li4 = new Account();
                                  ^
4 errors

请问这个是为什么?应该如何解决这样的问题呢?新手问题比较愚蠢,还望高手多见谅,嬉:) 很急..期待回复!谢谢!

8 个解决方案

#1


张三余额为250.0
李四余额为150.0
---------------------
这个是我的运行结果...

#2


能说说能你的配置么情况么?看样子是你的配置有问题

#3


我也是刚学java的,
刚试了一下你的程序,可以正常的,
帮不了你,帮你UP

#4


应该是Classpath没有设置正确!请参照环境变量设置!

#5


编译前设置环境量,path (你的jdk所在目录)\bin\

#6


刚才试了下,在eclipse里可以运行,因为自动生成了.class文件,且在同一目录下.但在dos下也出现了和楼主一样的问题,找不到Account类.其实还是classpath的问题.楼主的两个类所在的文件夹(假如:mybank在d盘)应该不在classpath里设置的文件夹里吧.解决:在classpath里添加d:\mybank就行了.但这并不是一个好的方法,你可以建一个公共的放类文件的folder.在classpath里添加,以后编译的类就在这个文件夹里去找了....建议看看TIJ\ch5\package一节.

#7


javac -cp . *****
在系统环境变量里的CLASSPATH中添加一个;.

#8


最后正确执行的方法:javac *.java 

奇怪,一个个编译就有错,全部编译就没问题,郁闷!

#1


张三余额为250.0
李四余额为150.0
---------------------
这个是我的运行结果...

#2


能说说能你的配置么情况么?看样子是你的配置有问题

#3


我也是刚学java的,
刚试了一下你的程序,可以正常的,
帮不了你,帮你UP

#4


应该是Classpath没有设置正确!请参照环境变量设置!

#5


编译前设置环境量,path (你的jdk所在目录)\bin\

#6


刚才试了下,在eclipse里可以运行,因为自动生成了.class文件,且在同一目录下.但在dos下也出现了和楼主一样的问题,找不到Account类.其实还是classpath的问题.楼主的两个类所在的文件夹(假如:mybank在d盘)应该不在classpath里设置的文件夹里吧.解决:在classpath里添加d:\mybank就行了.但这并不是一个好的方法,你可以建一个公共的放类文件的folder.在classpath里添加,以后编译的类就在这个文件夹里去找了....建议看看TIJ\ch5\package一节.

#7


javac -cp . *****
在系统环境变量里的CLASSPATH中添加一个;.

#8


最后正确执行的方法:javac *.java 

奇怪,一个个编译就有错,全部编译就没问题,郁闷!