Comment définir une couleur d'arrière-plan d'un JButton en Java?

Je suis en train d'élaborer un Java Application de Bureau. Dans ce que j'ai 4 JButtons sur un JPanel. Maintenant, je veux que quand on clique sur un bouton de son changement de couleur de fond à une autre couleur (disons orange) pour représenter qu'il a été cliqué et la couleur d'arrière-plan de toutes les autres 3 boutons de rétablir les couleurs par défaut (dans le cas où ils avaient Orange couleur d'arrière-plan).

Donc, à un moment, un seul bouton peut avoir la couleur orange.

L'approche actuelle que j'ai demandé, c'est que j'ai mis en œuvre le code suivant dans la xxxActionPerformed() méthode de JButton bouton1

button1.setBackground(Color.Orange);
button2.setBackground(Color.Gray);
button3.setBackground(Color.Gray);
button4.setBackground(Color.Gray);

et de même pour le reste trois boutons.

Maintenant, je ne veux pas le fond d'écran de couleur de Gris (pour unclicked bouton). Au lieu de cela, je veux que la couleur de fond par défaut de sorte que le fond d'écran de couleur sera de s'adapter à la look-and-feel de l'interface graphique en fonction de la finalité de l'utilisateur de la plateforme de look-and-feel.

T1. Comment puis-je obtenir la couleur de fond par défaut?

T2. Est-ce la bonne approche pour faire cela ou Est-il un autre mécanisme par lequel je peux grouper tous les quatre boutons dans un groupe de boutons, de sorte que seulement un seul peut avoir la propriété spécifiée à la fois (comme des boutons radio)?