Comment créer une classe anonyme en java

Classes internes anonymes (souvent appelé simplement classes anonymes) sont probablement la caractéristique la plus étrange du langage de programmation Java. La première fois que vous voyez une classe anonyme, vous aurez presque certainement penser que quelqu'un a fait une erreur et que le code ne peut éventuellement compiler. Mais compiler qu'il fait, et il fonctionne encore. Lorsque vous obtenez le coup de travailler avec des classes anonymes, vous vous demanderez comment vous avez pu vivre sans eux.

Une classe anonyme est une classe qui est défini sur place, juste à l'endroit où vous souhaitez instancier. Parce que vous codez le corps du droit de classe où vous en avez besoin, vous n'êtes pas obligé de lui donner un nom. (Voilà pourquoi on appelle ça un anonyme classe.)

La forme de base pour déclarer et instancier une classe anonyme est la suivante:

nouvelle ClassOrInterface () {} class-corps

Comme vous pouvez le voir, vous spécifiez le nouveau mot-clé suivi par le nom d'une classe ou d'une interface qui spécifie le type de l'objet créé à partir de la classe anonyme.




Ce nom de la classe ou de l'interface est suivi par des parenthèses, qui peuvent inclure une liste de paramètres qui est passé au constructeur de la classe anonyme. Ensuite, vous codez un corps de classe entre accolades. Ce corps de la classe peut inclure tout ce qui un corps régulier de classe peut inclure: champs, méthodes, et même d'autres classes ou des interfaces.

Voici un exemple d'une classe anonyme simple:

public class AnonClass {static void main (String [] args) {publics boule B = new Ball () {succès public void () {System.out.println ("Vous le frappez!") -}} - b.hit ( ) -} {Interface boule de succès void () -}}

Dans cet exemple, l'interface nommée Balle est créé qui a une méthode unique nommée frapper. Puis, de retour dans le principal Procédé, une variable de type Balle est déclaré et une classe anonyme est utilisé pour créer un objet. Le corps de la classe anonyme est constitué d'une mise en œuvre de la frapper Procédé qui affiche simplement le message Vous frappez! sur la console.

Après la classe anonyme est instancié et affecté à la b variable, la prochaine déclaration appelle la frapper method.When vous exécutez ce programme, la ligne unique Vous frappez! est affichée sur la console.

Voici quelques choses à méditer lorsque vous travaillez avec des classes anonymes:

  • Vous ne pouvez pas créer un constructeur pour une classe anonyme, parce que la classe anonyme n'a pas de nom. Que voulez-vous appeler le constructeur, de toute façon?

  • Vous ne pouvez pas passer des paramètres si la classe anonyme est basé sur une interface. Cela rend interfaces sensorielles ne sont pas des constructeurs, afin de Java ne voulait rien avoir à passer des paramètres à.

  • Une instruction d'affectation peut utiliser une classe anonyme comme indiqué dans cet exemple. Dans ce cas, le corps de la classe anonyme est suivie par un point-virgule qui marque la fin de l'instruction d'affectation. Notez que cette virgule est partie de la déclaration d'affectation, pas la classe anonyme.

  • Une classe anonyme est un type spécial de de classe intérieure comme toute classe interne, il a automatiquement accès aux champs et les méthodes de sa classe externe.

  • Une classe anonyme ne peut pas être statique.


» » » » Comment créer une classe anonyme en java