| maison  | Hardware  | réseaux  | programmation  | Logiciel  | Dépannage  | systèmes |  
programmation  
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    Connaissances Informatiques >> programmation >> Programmation Java >> Content
    Pourquoi sont Java Strings Immuable
    ? Les développeurs de Java destinées de la classe "String" comme un objet immuable. «Immuable» signifie que la valeur de la classe ne peut pas changer une fois que le programmeur instancie l'objet . Alors qu'il semblerait bénéfique de toujours utiliser un objet String qui a une valeur variable, quelques raisons expliquent pourquoi ce n'est pas le cas . Chaînes immuables se prêtent à une utilisation dans des programmes multi-thread , d'accroître la sécurité du programme, minimiser l'utilisation de la mémoire, et mieux travailler en tant que valeurs dans des structures de données telles que Hashtables . Strings en ​​programmes multi-threads
    programmes

    sont appelés multi-thread quand ils se reproduisent ce qu'on appelle les "fils" qui exécuter du code en même temps. Quand un programme engendre plusieurs threads, ces fils travaillent souvent sur ​​les mêmes variables à différents moments. Le danger , c'est quand deux threads partagent une variable, et on change de fil de sa valeur tandis que le second utilise encore . Un mécanisme de "verrouillage" garde généralement des variables dans les situations de filetage. Avec une chaîne immuable, cependant , un fil n'est pas concernée par la valeur de la variable.
    Sécurité

    l'immuabilité des chaînes contribue également à certaines préoccupations de sécurité. Lorsqu'un utilisateur entre des informations de connexion sur un site Web , c'est théoriquement possible pour lui de changer la valeur de la chaîne de nom d'utilisateur ou mot de passe avant qu'il ne passe au système. Si cela se produit , alors que l'utilisateur peut injecter du code malveillant sur ​​le système , il ou elle se connecte à. Depuis les chaînes sont immuables , cependant , ce n'est pas possible.
    Minimiser la mémoire utilisation

    Quand un programmeur crée un objet string , cet objet réside dans un fixe Point à la mémoire , et le nom de la variable sert de " référence ". Parce que la référence à la mémoire et ce que la mémoire contient sont deux choses distinctes , ce qui signifie que d'autres noms de variables peuvent également référencer le même emplacement mémoire. Ainsi, lorsque des copies d'une chaîne sont nécessaires, différentes variables peuvent référencer la même chaîne immuable, et depuis il ne changera pas , n'ont pas besoin de créer des copies de la même chaîne .
    Utilisation dans HashTable structures de données Photos, illustrations

    hashtables sont appelés «dictionnaires» parce qu'ils utilisent des paires clé - valeur pour rendre la recherche de la structure de données plus facile. Strings référencent généralement une valeur (par exemple, "name" => " Robert " ou " âge " => 25). Depuis les chaînes sont immuables , un programmeur n'a pas à se soucier de la clé d'une valeur changeante , et perdre l'accès à cette valeur.

    Previous :

    next :
      articles connexes
    ·Comment faire pour utiliser un contrôleur en Java 
    ·Comment écrire des programmes Java pour une machine à…
    ·Les avantages de JDK 1.6 
    ·Comment renvoyer une valeur booléenne en Java 
    ·Comment installer les fichiers APK Envoyés 
    ·Comment trouver les clés étrangères à l'aide des jo…
    ·Comment supprimer JPA dans Java 
    ·Comment ajouter des applets Java en utilisant HTML Prog…
    ·Comment remplacer une balle qui rebondit avec un oiseau…
    ·Comment faire pour installer la machine virtuelle Java 
      articles en vedette
    ·Comment se connecter à SQLite Avec Mongoose 
    ·Comment faire un saut de ligne dans XSLT 
    ·Comment mettre à jour de temps avec VBScript 
    ·Comment utiliser Strict en Perl 
    ·Comment faire pour modifier le Service Lieu Web dans Vi…
    ·Comment faire pour convertir un index de tableau PHP po…
    ·Comment écrire un formulaire avec jQuery 
    ·Comment masquer une barre de défilement avec JavaScrip…
    ·Comment renvoyer une valeur booléenne en Java 
    ·Comment faire pour modifier un lien hypertexte avec Jav…
    Copyright © Connaissances Informatiques http://fr.wingwit.com