rewrite the following code using anonymous class. submit.addActionListener(newBu
ID: 3583401 • Letter: R
Question
rewrite the following code using anonymous class.
submit.addActionListener(newButtonListener());
private class ButtonListenerimplements ActionListener {
public voidactionPerformed(ActionEvent e) {
if ( (java.isSelected() ||helpDesk.isSelected()
||coffee.isSelected()) &&
(goodCitizen.isSelected()) &&
(!salary.getSelectedItem().equals("above $100,000")))
{
JOptionPane.showMessageDialog(null,
"Thank you for your application submission. " +
"We'll contact you after we process your information.");
}
}
Explanation / Answer
delegate void processMessageDialog(ActionEvent e); // eclareing anonymous delegate method
submit.addActionListener(newButtonListener());
private class ButtonListener implements ActionListener {
processMessageDialog anony = delegate(ActionEvent e) // anonymous method
{
if ( (java.isSelected() ||helpDesk.isSelected()
||coffee.isSelected()) &&
(goodCitizen.isSelected()) &&
(!salary.getSelectedItem().equals("above $100,000")))
{
JOptionPane.showMessageDialog(null,
"Thank you for your application submission. " +
"We'll contact you after we process your information.");
}
};
public void actionPerformed(ActionEvent e) {
anony(e); // calling anonymous method
}
}
------------------------------------------------------------------------------
// We can write in second way also...
delegate void actionPerformed(ActionEvent e); // eclareing anonymous delegate method
submit.addActionListener(newButtonListener());
private class ButtonListener implements ActionListener {
actionPerformed anony = delegate(ActionEvent e) // anonymous method
{
if ( (java.isSelected() ||helpDesk.isSelected()
||coffee.isSelected()) &&
(goodCitizen.isSelected()) &&
(!salary.getSelectedItem().equals("above $100,000")))
{
JOptionPane.showMessageDialog(null,
"Thank you for your application submission. " +
"We'll contact you after we process your information.");
}
};
}
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.