帮看看怎么样修改才能运行我的程序啊 要实现输入数量、价格--然后计算:代码如下public class Invoice {
private String turns;
private String station;
double amount;
double price;
public void setturns(String name)
{ turns=name;
}
public String getturns()
{ return turns;
}
public void setstation(String st)
{ station=st;
}
public double setamount(double A)
{ amount=A;
}
public double getamount(double A)
{ return A;
}
public double setprice(double pc)
{ price=pc;
}
public double getamount(double pc)
{ return pc;
}
public double getInvoiceamount()
{ sum=amount*price;
System.out.printf("结果是%s",sum);
}
}创建的主类如下
public class TestInovice{
public void main(String args[]);
Invoice L=new Invoice();
L.Invoice(sum);
}
private String turns;
private String station;
double amount;
double price;
public void setturns(String name)
{ turns=name;
}
public String getturns()
{ return turns;
}
public void setstation(String st)
{ station=st;
}
public double setamount(double A)
{ amount=A;
}
public double getamount(double A)
{ return A;
}
public double setprice(double pc)
{ price=pc;
}
public double getamount(double pc)
{ return pc;
}
public double getInvoiceamount()
{ sum=amount*price;
System.out.printf("结果是%s",sum);
}
}创建的主类如下
public class TestInovice{
public void main(String args[]);
Invoice L=new Invoice();
L.Invoice(sum);
}
Invoice L=new Invoice();
L.Invoice(sum);
}
你那个main应该这样写吧!
不止这样,我就没找到L.Invoice(sum)这个方法写到哪里在?!
import java.Scanner;
public class Invoice {
double sum=0;
double amount=0;
double price=0;
Scanner scanner=new Scanner(Syatem.in);
System.out.print("\n请输入物品价格:");
price=scanner.nextDoubl();
System.out.print("\n请输入物品价格数量:");
amount=scanner.nextDoubl();
public double getInvoiceamount()
{ sum=amount*price;
System.out.println("结果是" + sum);
}
public class Invoice {
private String turns;
private String station;
double amount;
double price;
public void setturns(String name){
turns=name;
}
public String getturns(){
return turns;
}
public void setstation(String st){
station=st;
}
public void setamount(double A){
amount=A;
}
public double getamount(){
return amount;
}
public void setprice(double pc){
price=pc;
}
public double getpricet(){
return price;
}
public void getInvoiceamount(){
double sum=amount*price;
System.out.println("结果是:"+sum);
}
}
//TestInovice.java
public class TestInovice{
public static void main(String args[]){
Invoice L=new Invoice();
L.setamount(20);
L.setprice(1.5);
L.getInvoiceamount();
}
}
两个文件都已经调试过了,可以运行。
看的出来,你学过一点c语言。但是这个程序里面的输出,你注意到了吗,是System.out.println("结果是:"+sum),中间是假好,不是逗号。另外,注意函数的返回值。一般来说,get()函数不需要参数的。那个main()也是函数,你忘记了花括号。还有,注意sum你没有声明就突然拿出来,肯定要double sum才可以的。看得出你程序写的很少,这应该是第一个java程序吧,可以先把书上的例子抄几遍,自己学着调试一下。加油。
public class Test
{
public static void main(String[] args)
{
double price = 0 ;
double amount = 0 ;
Invoice invoice = new Invoice() ;
Scanner input = new Scanner(System.in) ; System.out.print("please input price:");
price = input.nextDouble() ;
invoice.setPrice(price) ; System.out.print("please input amount:");
amount = input.nextDouble() ;
invoice.setAmount(amount) ; System.out.println("invoice.getInvoiceamount():" + invoice.getInvoiceamount() );
}
}
class PriceCule {
double sum;
String turns;
String station;
double amount;
double price;
public void setturns(String name)
{
turns=name;
}
public String getturns()
{ return turns;
}
public void setstation(String st)
{
station=st;
}
public double setAmount(double A)
{
return amount=A;
}
public double getamount(double A)
{ return A;
}
public double setPrice(double pc)
{
return price=pc;
}
public double getInvoiceamount()
{
return sum=amount*price;
}
}class Test
{
public static void main(String[] args)
{
double price = 0 ;
double amount = 0 ;
PriceCule invoice = new PriceCule() ;
Scanner input = new Scanner(System.in) ; System.out.print("请输入价格:");
price = input.nextDouble() ;
invoice.setPrice(price) ; System.out.print("请输入数量:");
amount = input.nextDouble() ;
invoice.setAmount(amount) ;
System.out.println("invoice.getInvoiceamount():" + invoice.getInvoiceamount() );
}
}
自己学习了一下~~~~~~~~~~