我正在编写一个程序,让用户选择一种货币,然后当他们输入数字并点击“转换按钮”时,转换将显示在文本框中。不过,我不断收到在线36上,上面写着“类或接口预期公共无效的init()”为什么我在这个Java代码中不断收到错误?
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class CurrencyConversionApplet implements ActionListener, ItemListener
{
// Variables
double dollars, pounds, euros, ruble, price;
Image dollarSign;
Label lblTitle = new Label ("Enter the dollar amount (do not use commas or dollar signs): ");
Label lblOutput = new Label (" ");
TextField txtDollar = new TextField(10);
Button convButton = new Button("Convert");
CheckboxGroup chkGroup = new CheckboxGroup();
Checkbox chkPounds = new Checkbox("British Pounds",false,chkGroup);
Checkbox chkEuro = new Checkbox("Euros",false,chkGroup);
Checkbox chkRuble = new Checkbox("Russian Ruble",false,chkGroup);
Checkbox hiddenBox = new Checkbox("",true,chkGroup);
Image dollarSign;
}
public void init()
{
add(lblTitle);
add(txtDollar);
add(convButton);
add(chkPounds);
add(chkEuro);
add(chkRuble);
chkPounds.addItemListener(this);
chkEuro.addItemListener(this);
chkRuble.addItemListener(this);
dollarSign=getImage(getDocumentBase(), "dollar.jpg");
setBackground(Color.blue);
setForeground(Color.yellow);
convButton.addActionListener(this);
}
public void paint(Graphics g) {
g.drawImage(dollarSign, 0, 28, this);
}
public void itemStateChanged(ItemEvent choice)
{
dollars = Double.parseDouble(txtDollar.getText());
pounds = dollars * .62
euros = dollars * .71
ruble = dollars * .03
if(chkPounds.getState())
price = pounds;
if(chkEuro.getState())
price = euros;
if(chkRuble.getState())
price = ruble;
}
public void actionPerformed(ActionEvent e)
{
lblOutput.setText(Double.toString(price));
}
这不是这个错误信息的原因,但是当试图运行它作为一个小程序时会弹出。 – 2011-03-15 00:16:18