2016-12-21 6 views
-1

私はGenderGUIクラスのGenderIsStoredメソッドで、ループの各繰り返しでジェンダーを表す各JRadioButtonを選択する回数を記録できるようにActionListenerを実装しようとしています。私のプログラムのドライバークラス。しかし、抽象メソッドをオーバーライドする方法がわからないため、GenderGUIクラスを適切にコンパイルすることはできません。 GenderCountクラスは、抽象クラスであるActionListenerインターフェイスを実装しています。もともと、私は正しくコンパイルするためには、親インターフェイス(ActionListener)内のすべてのメソッドを実装しなければならないと考えましたが、同じ問題が発生しました。誰も私はこの問題を解決する方法を知っていますか?JRadioButton:抽象メソッドをオーバーロードする方法

public GenderGUI() 
{ 
    GenderChoice = new JLabel ("Select your gender below: "); 

    Male = new JRadioButton ("Male"); 
    Female = new JRadioButton ("Female"); 

    ButtonGroup GenderGroup = new ButtonGroup(); 
    GenderGroup.add (Male); 
    GenderGroup.add (Female); 

    GenderCount listener = new GenderCount(); 
    Male.addActionListener (listener); 
    Female.addActionListener (listener); 
    primary = new JPanel(); 
    primary.add (GenderChoice); 
    primary.add (Male); 
    primary.add (Female); 
} 

public JPanel getGenderPanel() 
{ 
    return primary; 
} 

private class GenderCount implements ActionListener 
{ 
    public void GenderIsStored (ActionEvent event) 
    { 
     Object source = event.getSource(); 

     if (Male.isSelected()) 
     { 
      MaleCount++; 
     } 

     else 
      FemaleCount++; 
    } 

} 

}

+0

の代わりにGenderIsStoredこれは[よく尋ねられ、以前に回答しました] google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=site:stackoverflow.com+java+class+is+not+abstract+and+does+not+override+)。 –

答えて

0

あなたGenderCount明確ActionListenerを実装していません。

actionPerformed()が必要です。実際にあなたは1つ持っているように見えますが、間違った名前を与えました:actionPerformedの代わりに

関連する問題