ユーザーが入力した食事代、希望するチップ%、消費税の合計を計算することになっているイベントハンドラーの登録に問題があります。「メソッド本体がありません、または抽象を宣言します」というエラーメッセージが表示され続けます。構文エラーはないようですので、何が問題なのかよくわかりません。
私はこの時点で正直に立ち往生していて、問題が何であるかについての手がかりを持っていません。
public class TipTaxTotal extends Application
{
//Fields
private TextField mealCostTextField;
private TextField tipPercentageTextField;
private TextField salesTaxTextField;
private Label totalLabel;
public static void main (String[] args)
{
launch(args);
}
@Override
public void start (Stage primaryStage)
{
//Meal cost, Tip percentage, and Sales tax labels & TextFields
Label mealCostLabel = new Label ("Enter the cost of your meal");
mealCostTextField = new TextField ();
Label tipPercentageLabel = new Label ("Enter the desired tip percentage");
tipPercentageTextField = new TextField ();
Label salesTaxLabel = new Label ("Enter the sales tax percentage");
salesTaxTextField = new TextField ();
//This button will perform the calculation
Button calcButton = new Button("Calculate");
//Register the event handler
calcButton.setOnAction(new CalcButtonHandler());
//This label will display the total
totalLabel = new Label ();
//Put all the Labels and Text Fields in the Hbox spaced by 10 px
HBox hbox = new HBox(10, mealCostLabel, mealCostTextField,
tipPercentageLabel, tipPercentageTextField, salesTaxLabel,
salesTaxTextField);
//Put Hbox, CalcButton, and total Label in the Vbox
VBox vbox = new VBox(10, hbox, calcButton, totalLabel);
//align vbox to the center of the stage
vbox.setAlignment(Pos.CENTER);
//set vbox padding to 10 px
vbox.setPadding(new Insets(10));
//create a scene
Scene scene = new Scene(vbox);
//add the scene to the stage
primaryStage.setScene(scene);
//give the stage a title
primaryStage.setTitle("Tip% and Sales Tax Calculator");
primaryStage.show();
}
//This is where my trouble is
//event handler
class CalcButtonHandler implements EventHandler<ActionEvent>
{
@Override
public void handle(ActionEvent event);
{
//get the meal cost, tip percentage, and sales tax
double MealCost =
Double.parseDouble(mealCostTextField.getText());
double TipPercentage =
Double.parseDouble(tipPercentageTextField.getText());
double SalesTax =
Double.parseDouble(salesTaxTextField.getText());
//calculate
double totalTaxes = SalesTax + TipPercentage;
double total = MealCost * totalTaxes;
//display total
totalLabel.setText(String.format("Total: $%,.2f ", total));
}
}
}
calcButtonは、ユーザーの食事の総コスト、ユーザーが希望するチップ、およびユーザーの消費税を取得することになっています。
インターフェイスは抽象クラスと等しくないため、インターフェイスを実装するときに@Overrideは必要ありません。インターフェイスメソッドは定義されておらず、抽象としてマークされていないため、オーバーライドすることはできません。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加