繁体   English   中英

简单的Java程序的命令提示符“访问被拒绝”错误

[英]Command prompt “access denied” error for a simple java program

我使用以下代码创建了源文件.java:

// bank.java
// demonstrates basic OOP syntax
// to run this program: C>java BankApp
////////////////////////////////////////////////////////////////
class BankAccount
{
private double balance;                   // account balance
public BankAccount(double openingBalance) // constructor
{
balance = openingBalance;
}
public void deposit(double amount)        // makes deposit
{
balance = balance + amount;
}
public void withdraw(double amount)       // makes withdrawal
{
balance = balance - amount;
}
public void display()                     // displays balance
{
System.out.println(“balance=” + balance);
}
}  // end class BankAccount
////////////////////////////////////////////////////////////////

class BankApp
{
public static void main(String[] args)
{
BankAccount ba1 = new BankAccount(100.00); // create acct
System.out.print(“Before transactions, “);
ba1.display();                         // display balance
ba1.deposit(74.35);                    // make deposit
ba1.withdraw(20.00);                   // make withdrawal
System.out.print(“After transactions, “);
ba1.display();                         // display balance
}  // end main()
}  // end class BankApp

我使用命令“ javac”对其进行了编译,并得到了两个类文件-每个类对应一个类。 我尝试使用cmd运行它,但是输入以下命令后出现错误“访问被拒绝”:

C:\new>java -cp <C:\new> BankApp.class

输入后:

C:\new>java BankApp.class

我得到:错误:找不到或加载主类BankApp.class

这个命令

C:\new>java -cp <C:\new> BankApp.class

尝试从C:\\new重定向输入并将输出重定向到BankApp.class 在Windows命令提示符(以及大多数其他命令提示符)中, <重定向输入, >重定向输出。 另外,在运行Java类时,无需指定.class ,而是提供名,而不是文件名。

如果您的目标是确保当前目录位于类路径中,那么您需要查找的是:

C:\new>java -cp . BankApp

如果您的目标是确保目录c:\\new在类路径中(即使它不是当前目录,即使在您的示例中也是如此),那么您正在寻找的是:

C:\new>java -cp c:\new BankApp

请注意,您初次尝试的命令可能已经删除或截断了BankApp.class文件,因此您可能必须重新编译它才能使以上功能BankApp.class

您只需要:

java BankApp

要么

java -cp c:\new BankApp

Java使用的是的名称,而不是文件的名称。如果使用<> ,则会要求Windows Shell执行重定向,这是您不希望的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM