| Casa | Hardware | Redes | Programación | software | Criticar | Sistemas |   
Programación  
  • C /C + + Programming

  • Lenguajes De Programación

  • Delphi Programación

  • Programación Java

  • JavaScript Programación

  • Programación PHP /MySQL

  • Perl Programming

  • Python Programming

  • Rubí Programación

  • Visual Basics Programación
  •  
    Conocimientos Informáticos >> Programación >> Programación Java >> Content
    ¿Por qué son Java Strings
    Inmutable ? Los desarrolladores de Java diseñado la clase "String " como un objeto inmutable. " Inmutable " significa que el valor de la clase no se puede cambiar una vez que el programador crea una instancia del objeto. A pesar de que sería beneficioso utilizar siempre un objeto String que tiene un valor variable, algunas razones explican por qué este no es el caso. Cuerdas inmutables prestan a utilizar en los programas de varios subprocesos , aumentar la seguridad del programa, minimizar el uso de memoria, y trabajar mejor como valores en estructuras de datos como las tablas hash . Cuerdas en programas multihilo
    Programas

    se llaman multi-hilo cuando se reproducen los llamados "hilos" que ejecutan código al mismo tiempo. Cuando se genera un programa de múltiples hilos , los hilos trabajan a menudo en las mismas variables en diferentes momentos . El peligro es cuando dos hilos comparten una variable , y un hilo cambia su valor , mientras que el segundo todavía lo utiliza . Un mecanismo de " bloqueo " por lo general guarda variables en situaciones de roscado. Con una cadena inmutable, sin embargo, un hilo no está preocupado por el valor de la variable.
    Seguridad

    La inmutabilidad de cuerdas también ayuda con algunos problemas de seguridad. Cuando un usuario introduce datos de acceso en un sitio web , es teóricamente posible que cambie el valor de la cadena de nombre de usuario o la contraseña antes de que pase al sistema. Si esto ocurre, entonces el usuario puede inyectar código malicioso en el sistema que él o ella está registrando para . Dado que las cadenas son inmutables , sin embargo , esto no es posible .
    Minimizar uso de memoria

    Cuando un programador crea un objeto de cadena , que reside en un objeto fijo punto en la memoria, y el nombre de la variable sirve como " referencia ". Debido a que la referencia a la memoria y lo que contiene la memoria son dos cosas separadas , lo que significa que otros nombres de variables también pueden hacer referencia a la misma posición de memoria . Así que cuando se requieren copias de una cadena, diferentes variables pueden hacer referencia a la misma cadena inmutable, y puesto que no va a cambiar , no tienen necesidad de crear copias de la misma cadena .
    Uso en Estructuras de datos HashTable

    tablas hash son llamados "diccionarios" , ya que utilizan pares de palabra clave y valor para hacer la búsqueda de la estructura de datos más fácil. Cuerdas generalmente hacen referencia a un valor (por ejemplo, "nombre" = > " Robert " o "edad " = > 25 ) . Dado que las cadenas son inmutables , un programador no tiene que preocuparse por la palabra clave de un valor de cambio , y la pérdida de acceso a ese valor.

    Previous :

    next :
      Artículos relacionados
    ·¿Cómo se imprime un símbolo de Unicode en Java 
    ·Cómo desarrollar un Test de Personalidad Puntuación d…
    ·Introducción a Enterprise JavaBeans 
    ·Cómo ejecutar secuencias de comandos VBS De Java 
    ·Reglas de Negocio en Java 
    ·Java IRC Bot Tutorial 
    ·Cómo convertir AWT a Swing 
    ·Una explicación de anotaciones en Java 
    ·Cómo utilizar CutePDF De Java 
    ·Cómo configurar el tamaño de JTextField 
      Artículos destacados
    ·Cómo hacer la suma de las variables en Java 
    ·Cómo acceder a la biblioteca de MSDN en C + + 
    ·Diferencias entre la escritura y WriteLine en Python 
    ·Cómo cambiar el tamaño de imágenes usando C # 
    ·Cómo mover a la siguiente fila de DataGridView 
    ·Cómo conseguir un Root Ruta del archivo del servidor m…
    ·Cómo subir archivos PHP de una URL 
    ·Cómo compilar Python 
    ·Cómo poner un signo de exclamación en TWiki 
    ·Rendering Engine Common Lisp y HTML Binding 
    Copyright © Conocimientos Informáticos http://ordenador.wingwit.com