Comprendre la définition de Java Enum
La classe Java Enum est définie comme suit :
class Enum<E extends Enum<E>>
Ce paramètre de type indique que l'argument de type pour enum doit dériver d'une énumération qui a elle-même le même argument de type. En d'autres termes, le paramètre de type de l'énumération fait référence à l'énumération elle-même.
Par exemple, considérons l'énumération suivante appelée StatusCode :
public class StatusCode extends Enum<StatusCode>
Ici, l'argument de type de l'énumération est StatusCode. Cela signifie que E est égal à StatusCode et satisfait à la contrainte d'extension d'Enum
Objectif de l'auto-référencement Enum
Le but de cet auto-référencement Le paramètre type est de permettre à la classe Enum de se référer à elle-même dans son API. Par exemple, Enum
Exemple de paramètre de type similaire
Un paramètre de type similaire Le paramètre type peut être utilisé dans d’autres situations où un type doit faire référence à lui-même. Par exemple, considérons les interfaces suivantes utilisées dans le port C# de ProtocolBuffers :
public interface IBuilder<TMessage, TBuilder> where TMessage : IMessage<TMessage, TBuilder> where TBuilder : IBuilder<TMessage, TBuilder> public interface IMessage<TMessage, TBuilder> where TMessage : IMessage<TMessage, TBuilder> where TBuilder : IBuilder<TMessage, TBuilder>
Ces interfaces permettent à un constructeur de créer un message approprié et vice versa, sans exposer les détails d'implémentation aux utilisateurs de l'API.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!