ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Proyecto modificadores entrega final Los Wrappers


Enviado por   •  27 de Septiembre de 2018  •  Tareas  •  1.774 Palabras (8 Páginas)  •  112 Visitas

Página 1 de 8

[pic 1][pic 2][pic 3]

PRESENTADO POR:

FERNANDO RODRIGUEZ CARO - COD. 1311070271

DIRIGIDO A:

INGRID ROCIO BAQUERO VILLAMIL


WRAPPER CLASSES

Los Wrappers (envoltorios) son clases diseñadas para ser un complemento de los tipos primitivos, quienes son los únicos elementos de Java que no son objetos. Existen algunas ventajas desde el punto de vista de la eficiencia, pero también algunos inconvenientes desde el punto de vista de la funcionalidad.

Por ejemplo, los tipos primitivos siempre se pasan como argumento a los métodos por valor, mientras que los objetos se pasan por referencia. No hay forma de modificar en un método un argumento de tipo primitivo y que esa modificación se trasmita al entorno que hizo la llamada.

Una forma de conseguir esto es utilizar un Wrapper, esto es un objeto cuya variable miembro es el tipo primitivo que se quiere modificar. Las clases Wrapper también proporcionan métodos para realizar otras tareas con los tipos primitivos, tales como conversión con cadenas de caracteres en uno y otro sentido.

Existe una clase Wrapper para cada uno de los tipos primitivos numéricos, esto es, existen las clases Byte, Short, Integer, Long, Float y Double (miremos que los nombres empiezan por mayúscula, siguiendo la nomenclatura típica de Java).

En java existe una clase envolvente por cada tipo primitivo, y se llama así porque guarda un valor de tipo primitivo al interior de un objeto.

Tipos primitivos:

Una variable primitiva es un nombre relacionado a una localidad de memoria que almacena un valor. Los datos primitivos se utilizan en expresiones que manejan los operadores aritméticos y lógicos que se definen en el lenguaje.

Tipos objeto:

Una variable objeto es una referencia a un bloque de memoria que contiene un objeto. Los objetos pueden contener una gran variedad de operaciones definidas por el usuario que mejoran la aplicación.

Java ha designado clases que nos permiten convertir un valor de un tipo primitivo en un objeto del mismo tipo. Así, un objeto de tipo Integer puede contener el valor de una variable primitiva tipo int, pero incluye operaciones para accederlo y desplegarlo.

Java designa clases que permiten convertir un valor de tipo primitivo a un objeto del mismo tipo. Entonces un objeto de tipo integer puede contener el valor de una variable primitiva tipo int, pero incluye operaciones para accederlo y desplegarlo.

Las clases empiezan con mayúscula. Hay solamente dos excepciones en los cuales el nombre del primitivo no coincide con el nombre de la clase, estas dos son: int y char, esto se dio por que cuando surgieron esos nombres en C por los años 70, en ese entonces el paradigma era hacer nombres y códigos cortos, entre más cortos mejor. Representar el tipo de dato primitivo que no tiene una razón de ser, la clase envolvente lo representa como si fuera un objeto. Por ejemplo hay una clase que se llama reléase que permite almacenar una colección de objetos, pero esta clase solo recibe objetos de modo que no se puede enviar un primitivo, entonces lo que se hace es representar  ese primitivo como si fuera un objeto utilizando su clase envolvente. Son métodos estáticos que nos facilitan labores específicas; por ejemplo se puede tomar un string para convertirlo en un entero primitivo, en la clase Double se puedo llamar a un método con el nombre parsdouble en la clase Doble que permite a partir de un string crear un Double permitido. Clases envolventes tienen métodos estáticos que no hay que instanciar en la clase.

Existe para cada tipo primitivo una clase envolvente, nombrada igual que su dato primitivo pero su nombre empieza con mayúscula.

Tabla de primitivos, envolventes y sus constructores:

Primitivo

Wrapper

Constructores

boolean

Boolean

String

byte

Byte

byte o String

char

Character

char

double

Double

double o String

float

Float

double o String

int

Integer

int o String

long

Long

long o String

short

Short

short o String

Para realizar conversiones podemos utilizar algunos métodos:

  • xxxValue()
  • parseXxx()
  • valueOf()
  • toString()

xxxValue()
Cuando se necesita el valor numérico de un envolvente a un primitivo podemos utilizar cualquiera de los muchos métodos xxxValue().

Ejemplo:

Integer var                                = new Integer (42);

byte b                                        = var.byteValue();

short s                                = var.shortValue();

double d                                 = var.doubleValue();

parseXxx() y valueOf() 

Ambos parseXxx() y valueOf() toman un String como argumento y arrojan NumberFormatException si la cadena no está formada propiamente, y pueden convertir objetos String a diferentes bases numéricas (radix). La principal diferencia de estos métodos es:

  • parseXxx() - regresa el primitivo nombrado.
  • valueOf() - regresa un nuevo objeto Wrapper del tipo del que fue invocado.

Ejemplo:

Ddouble d4 = Double.parseDouble("3.14");

Long L2 = Long.parseLong("101010", 2); // El resultado es 42

Long L3 = Long.valueOf("101010", 2); // // El resultado es 42

ToString() 
La clase Object la clase principal de java contiene el método toString(). La idea de este método es obtener una representación significativa de un objeto dado. Este método nos regresa una cadena con el valor del primitivo envuelto en el objeto.

Ejemplo:

         Double d = new Double("3.14");

        System.out.println("d = "+ d.toString() ); //El resultado es: d = 3.14

...

Descargar como (para miembros actualizados)  txt (10.3 Kb)   pdf (139.9 Kb)   docx (21.3 Kb)  
Leer 7 páginas más »
Disponible sólo en Clubensayos.com