Le cycle de vie d'une classe interne anonyme est déterminé par sa portée : Classe interne méthode-locale : valable uniquement dans la portée de la méthode qui l'a créée. Classe interne du constructeur : liée à l'instance de classe externe et libérée lorsque l'instance de classe externe est libérée. Classes internes statiques : chargées et déchargées en même temps que les classes externes.
Le cycle de vie des classes internes anonymes Java
Après la création d'une classe interne anonyme, son cycle de vie est principalement affecté par le périmètre dans lequel elle se trouve :
Cas pratique :
Créer une classe interne anonyme pour implémenter l'interface Comparable
: Comparable
接口:
List<Integer> numbers = new ArrayList<>(); // 创建匿名内部类比较器 Comparator<Integer> comparator = new Comparator<Integer>() { @Override public int compare(Integer a, Integer b) { return a - b; } }; // 根据比较器排序列表 Collections.sort(numbers, comparator);
在这个例子中,匿名内部类 comparator
用于对 numbers
列表进行排序。由于 comparator
是局部内部类,它只能在创建它的方法范围内使用。当 sort
方法执行完毕,comparator
rrreee
comparator
est utilisée pour comparer la liste de numéros
pour trier. Puisque comparator
est une classe interne locale, il ne peut être utilisé que dans le cadre de la méthode qui l'a créé. Lorsque la méthode sort
est terminée, le comparateur
sera également publié. 🎜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!