我真的很喜欢编程,在netbeans上我删除了所有其他文本,我只有以下内容,为什么程序不运行?
我得到的错误是,找不到主类。
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package findcost2;
public class Main
/* a program to calculate and display the cost of a product after
* sales tax has been added*/
public class FindCost2
Public static void main (String[] args)
{
double price,tax;
price = 500;
tax = 17.5;
price = price * (1 + tax/100);// calculate cost
// display results
System.out.println("***Product Price Check");
System.out.println("Cost after tax = " + price);
}
}
答案 0 :(得分:3)
请完全尝试并命名您的java文件FindCost2.java
package findcost2;
public class FindCost2{
public static void main (String[] args)
{
double price,tax;
price = 500;
tax = 17.5;
price = price * (1 + tax/100);// calculate cost
// display results
System.out.println("***Product Price Check");
System.out.println("Cost after tax = " + price);
}
}
答案 1 :(得分:2)
您在class Main
之后错过了一个大括号,并且您在同一个源文件中有两个公共类。删除public class Main
并将Public
更改为public
。
您可能还应该使用decimal numbers for dealing with currencies
迟早,每个试图用Java计算资金的人都会发现计算机无法添加。
答案 2 :(得分:1)
为什么Public
大写?应该是:
public class FindCost2 {
public static void main(String[] args) { ... }
}
答案 3 :(得分:1)
此代码存在许多问题:
外部类( Main )没有左括号。插入 {括号。
内部类( FindCost2 )没有左括号。插入 {括号。
main方法的public修饰符是大写的。从小写 p 开始。
main方法嵌套在内部类中。这是非常糟糕的形式。无论如何要使它工作,内部类需要是静态的。插入 static 关键字。
如果像这样,它编译:
public class Main {
/*
* a program to calculate and display the cost of a product after sales tax
* has been added
*/
public static class FindCost2 {
public static void main(String[] args) {
double price, tax;
price = 500;
tax = 17.5;
price = price * (1 + tax / 100);// calculate cost
// display results
System.out.println("***Product Price Check");
System.out.println("Cost after tax = " + price);
}
}
}
但是,外部类( Main )绝对没有意义。只需删除它。删除外部类时,内部类( FindCost2 )不再是静态的。删除关键字。
在一行上声明多个变量是非常糟糕的形式(如在double price,tax;中)。将其拆分为两行:
double price;
double tax;
有充分的理由不将双重类型用于货币价值。通过一些额外的工作,您可以轻松编写一个简单的Money类。检查javapractices.com以获得对此的良好概述。
希望有所帮助!