JavaRush /Blog Java /Random-FR /Pause café #105. Pourquoi les chaînes sont-elles immuable...

Pause café #105. Pourquoi les chaînes sont-elles immuables en Java ? Interface en Java et héritage multiple

Publié dans le groupe Random-FR

Pourquoi les chaînes sont-elles immuables en Java ?

Source : Dev.to Avant de comprendre pourquoi les chaînes sont immuables en Java, nous devons réfléchir à la raison pour laquelle nous créons quelque chose d'immuable ? Pause café #105.  Pourquoi les chaînes sont-elles immuables en Java ?  Interface en Java et héritage multiple - 1Immuable signifie qu'une fois créé, nous ne pouvons pas le changer. La seule raison pour laquelle nous pouvons penser à rendre quelque chose d'immuable est la synchronisation lorsqu'il est utilisé ensemble. C'est la raison pour laquelle les chaînes sont immuables. En Java, les objets String sont partagés et mis en cache dans le pool de chaînes. Il s'agit d'un emplacement spécifique sur le tas où les chaînes sont stockées et partagées entre plusieurs threads si elles ont la même valeur. Par exemple : dans un pool de chaînes, s'il existe déjà une chaîne avec la valeur « test » et que le programme souhaite créer un autre objet chaîne avec la même valeur, alors il obtiendra la même référence au lieu de créer un nouvel objet chaîne. Nous savons maintenant comment les chaînes sont stockées sur le tas. Voyons pourquoi ils sont inchangés.
  1. La première raison de l’immuabilité est la sécurité des threads. Étant donné que les lignes sont partagées entre plusieurs threads du pool de lignes, nous devons restreindre tout thread aléatoire pour le modifier. Toute modification apportée à une ligne peut affecter les autres threads accédant à la même ligne. Si un thread souhaite mettre à jour la valeur d’une ligne, il doit créer une autre ligne et la référencer.

  2. Généralement, nous utilisons String comme clé dans Map . Si les chaînes étaient mutables, n’importe qui pourrait modifier la valeur des chaînes et nous perdrions la clé réelle.

Interface en Java et héritage multiple

Source : Dev.to Comprenons ce qu'est l'héritage multiple. L'héritage multiple est une fonctionnalité de certains langages de programmation orientés objet dans lesquels un objet ou une classe peut hériter des fonctionnalités de plusieurs objets parents ou classes parents. Pause café #105.  Pourquoi les chaînes sont-elles immuables en Java ?  Interface en Java et héritage multiple - 1Comme le montre l'image ci-dessus, une classe enfant à héritage multiple peut avoir deux classes de base ou plus, mais pour y parvenir, nous avons besoin d'une interface.

Interface

Une interface en Java est le modèle d'une classe. Il possède des constantes statiques et des méthodes abstraites. Autrement dit, une interface ne peut contenir que des méthodes et des variables abstraites, elle ne peut pas avoir de corps de méthode. Elle ne peut pas être créée de la même manière qu’une classe abstraite.

Alors, où déclarer le corps de ces méthodes ?

Le corps de la méthode est déclaré dans la classe où la méthode est nécessaire selon les exigences du programmeur.

Comment déclarer une interface ?

Une interface peut être déclarée à l'aide du mot-clé interface . Syntaxe:
interface interface_name {abstract methods}

Note

Afin d'utiliser une interface déclarée dans une classe, nous devons utiliser le mot-clé Implements .

Mise en œuvre?

Nous allons d’abord créer une interface d’impression , et à l’intérieur de celle-ci, nous créerons une méthode abstraite print() ;
interface printgib{
void print();
}
Nous avons maintenant une interface prête à être utilisée par les classes, créons donc les classes abc et gk et implémentons-y l'interface.
public class abc implements printgib{
public void print(){                     //1st implementation of print
System.out.println("I love you 3000");
}
public static void main(String[] args){
abc obj = new abc();
gk obj1 = new gk();
obj.print();
obj1.print();
}
}

class gk implements printgib{
public void print(){                   //2nd implementation of print
System.out.println("I am Gk");
}
}
Comme le montre le code ci-dessus, nous avons réalisé l'héritage multiple et implémenté une interface. Maintenant, exécutez le code, enregistrez le fichier et...
javac file_name.java
java abc

Résultat:

Pause café #105.  Pourquoi les chaînes sont-elles immuables en Java ?  Interface en Java et héritage multiple - 2
Commentaires
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION