SlideShare una empresa de Scribd logo
1 de 2
Descargar para leer sin conexión
Asignación de Variables de referencia de objeto.
Variables de referencia de objeto actúan diferente de lo que puede esperar cuando produzca una
asignación. Por ejemplo, ¿qué parece que el siguiente fragmento?
Box b1 = new Box();
Box b2 = b1;
Podría pensar que B2 se asigna una referencia a una copia del objeto que hace referencia b1. Es
decir, podría pensar que el b1 y b2 se refieren a objetos separados y distintos. Sin embargo, esto
sería un error. En su lugar, después de que se ejecuta este fragmento, b1 y b2 se ambos se refieren
al mismo objeto. La asignación de b1 a b2 no asignar cualquier memoria o copiar cualquier parte del
objeto original. Simplemente hace hacer referencia al mismo objeto como hace b1 b2. Por lo tanto,
los cambios realizados en el objeto a través de b2 afectará el objeto a la que b1 se refiere, ya que
son el mismo objeto. Esta situación se muestra aquí:

Aunque ambos b1 y b2 se refieren al mismo objeto, que no están vinculados de ninguna otra forma.
Por ejemplo, una cesión subsiguiente a b1 simplemente desenganche b1 desde el objeto original sin
afectar el objeto o que afectan a b2. Por ejemplo:

Box b1 = new Box();
Box b2 = b1;
// ...
b1 = null;
Aquí, b1 se ha establecido en null, pero b2 puntos todavía al objeto original. Al asignar una variable
de referencia de objeto a otra variable de referencia de objeto, no va a crear una copia del objeto,
sólo está realizando una copia de la referencia.
La introducción de métodos.
Como se mencionó al principio de este capítulo, las clases suelen ser de dos cosas: variables y
métodos de instancia. El tema de los métodos es una grande porque Java les da tanta potencia y
flexibilidad. De hecho, gran parte del siguiente capítulo está dedicado a métodos. Sin embargo, hay
algunos principios básicos que necesita aprender ahora para que usted puede empezar a añadir
métodos a sus clases. Esta es la forma general de un método:

type name(parameter-list) {
// body of method
}
Aquí, que especifica el tipo de datos devueltos por el método. Esto puede ser cualquier tipo válido,
incluidos los tipos de clase que cree. Si el método no devuelve un valor, el tipo de valor devuelto
debe ser nulo. El nombre del método especificado por nombre. Esto puede ser cualquier identificador
jurídico distintos de los ya utilizados por otros elementos dentro del ámbito actual. La lista de
parámetros es una secuencia de pares de tipo y el identificador separados por comas. Los
parámetros son esencialmente las variables que reciben el valor de los argumentos pasados al
método cuando se le llama. Si el método no tiene parámetros, la lista de parámetros estará vacía.
Métodos que tienen un tipo de retorno distinto de void regreso un valor a la rutina de llamada
mediante el siguiente formulario de la declaración de retorno:
return value;
Aquí, el valor es el valor devuelto. En las siguientes secciones, se verá cómo crear varios tipos de
métodos, incluyendo aquellas que tienen parámetros y aquellos que devuelven valores.

Más contenido relacionado

Destacado

Univ of Dayton BSc Mech Engr Glenn Ramos
Univ of Dayton BSc Mech Engr Glenn RamosUniv of Dayton BSc Mech Engr Glenn Ramos
Univ of Dayton BSc Mech Engr Glenn Ramosglennramos
 
Natal 2013 - O Maior Presente
Natal 2013 - O Maior PresenteNatal 2013 - O Maior Presente
Natal 2013 - O Maior PresentePatricia Farias
 
Encuesta para Gobernador Córdoba - Mayo 2015 - Artemático
Encuesta para Gobernador Córdoba - Mayo 2015 - ArtemáticoEncuesta para Gobernador Córdoba - Mayo 2015 - Artemático
Encuesta para Gobernador Córdoba - Mayo 2015 - ArtemáticoEduardo Nelson German
 
My Moms Dignity Portrait_Seasons of Life Spring 2014
My Moms Dignity Portrait_Seasons of Life Spring 2014My Moms Dignity Portrait_Seasons of Life Spring 2014
My Moms Dignity Portrait_Seasons of Life Spring 2014Nancy Gershman
 
Debutante cotillion’s tea ppt
Debutante cotillion’s tea pptDebutante cotillion’s tea ppt
Debutante cotillion’s tea pptSyreezy Maurice
 
Project Cost Management
Project Cost Management Project Cost Management
Project Cost Management Muhammad Hanif
 

Destacado (9)

Proposal
ProposalProposal
Proposal
 
Univ of Dayton BSc Mech Engr Glenn Ramos
Univ of Dayton BSc Mech Engr Glenn RamosUniv of Dayton BSc Mech Engr Glenn Ramos
Univ of Dayton BSc Mech Engr Glenn Ramos
 
Natal 2013 - O Maior Presente
Natal 2013 - O Maior PresenteNatal 2013 - O Maior Presente
Natal 2013 - O Maior Presente
 
La escuela de boy
La escuela de boyLa escuela de boy
La escuela de boy
 
Taras bday
Taras bdayTaras bday
Taras bday
 
Encuesta para Gobernador Córdoba - Mayo 2015 - Artemático
Encuesta para Gobernador Córdoba - Mayo 2015 - ArtemáticoEncuesta para Gobernador Córdoba - Mayo 2015 - Artemático
Encuesta para Gobernador Córdoba - Mayo 2015 - Artemático
 
My Moms Dignity Portrait_Seasons of Life Spring 2014
My Moms Dignity Portrait_Seasons of Life Spring 2014My Moms Dignity Portrait_Seasons of Life Spring 2014
My Moms Dignity Portrait_Seasons of Life Spring 2014
 
Debutante cotillion’s tea ppt
Debutante cotillion’s tea pptDebutante cotillion’s tea ppt
Debutante cotillion’s tea ppt
 
Project Cost Management
Project Cost Management Project Cost Management
Project Cost Management
 

Similar a Asignación de variables de referencia de objeto

Similar a Asignación de variables de referencia de objeto (20)

Programación ii presentación tema 5
Programación ii presentación tema 5Programación ii presentación tema 5
Programación ii presentación tema 5
 
Odaliz presentacion
Odaliz presentacionOdaliz presentacion
Odaliz presentacion
 
modularidad de programación 2da parte (3) (1).pptx
modularidad de programación 2da parte (3) (1).pptxmodularidad de programación 2da parte (3) (1).pptx
modularidad de programación 2da parte (3) (1).pptx
 
Leguaje de programacion C#
Leguaje de programacion C#Leguaje de programacion C#
Leguaje de programacion C#
 
Tarea 5
Tarea 5Tarea 5
Tarea 5
 
Apunte paradigma orientado a objetos
Apunte paradigma orientado a objetosApunte paradigma orientado a objetos
Apunte paradigma orientado a objetos
 
Presentacion de clases en c#
Presentacion de clases en c#Presentacion de clases en c#
Presentacion de clases en c#
 
Benita ppp unidad 1
Benita ppp unidad 1Benita ppp unidad 1
Benita ppp unidad 1
 
Ces03
Ces03Ces03
Ces03
 
La palabra reservada this y los métodos "getters" y "setters"
La palabra reservada this y los métodos "getters" y "setters"La palabra reservada this y los métodos "getters" y "setters"
La palabra reservada this y los métodos "getters" y "setters"
 
Programacion
ProgramacionProgramacion
Programacion
 
Unidad 2 clases y objetos
Unidad 2 clases y objetosUnidad 2 clases y objetos
Unidad 2 clases y objetos
 
Datos previos
Datos previosDatos previos
Datos previos
 
Datos Previos
Datos PreviosDatos Previos
Datos Previos
 
Php orientado a_objetos
Php orientado a_objetosPhp orientado a_objetos
Php orientado a_objetos
 
Curso Java - Programación Digital
Curso Java - Programación DigitalCurso Java - Programación Digital
Curso Java - Programación Digital
 
Datos Previos
Datos PreviosDatos Previos
Datos Previos
 
Guia poo
Guia pooGuia poo
Guia poo
 
Semana9b Vbr
Semana9b VbrSemana9b Vbr
Semana9b Vbr
 
Cesar adrian barrios alarcon unidad 2
Cesar adrian barrios alarcon      unidad 2       Cesar adrian barrios alarcon      unidad 2
Cesar adrian barrios alarcon unidad 2
 

Más de Manuel Alejandro Hernandez Sanchez

Más de Manuel Alejandro Hernandez Sanchez (20)

Serialización personalizada
Serialización personalizadaSerialización personalizada
Serialización personalizada
 
Ejemplo
EjemploEjemplo
Ejemplo
 
Entrada
EntradaEntrada
Entrada
 
Ejemplo
EjemploEjemplo
Ejemplo
 
Tipos de excepciones
Tipos de excepcionesTipos de excepciones
Tipos de excepciones
 
Introducción
IntroducciónIntroducción
Introducción
 
Herencia
HerenciaHerencia
Herencia
 
Tipo estático y tipo dinámico
Tipo estático y tipo dinámicoTipo estático y tipo dinámico
Tipo estático y tipo dinámico
 
Introducción
IntroducciónIntroducción
Introducción
 
Uso de polimorfismo
Uso de polimorfismoUso de polimorfismo
Uso de polimorfismo
 
Enlace dinámico
Enlace dinámicoEnlace dinámico
Enlace dinámico
 
Clase base
Clase baseClase base
Clase base
 
Por qué java no soporta la sobre carga de operadores
Por qué java no soporta la sobre carga de operadoresPor qué java no soporta la sobre carga de operadores
Por qué java no soporta la sobre carga de operadores
 
Sobrecarga de constructores
Sobrecarga de constructoresSobrecarga de constructores
Sobrecarga de constructores
 
Recolección de basura
Recolección de basuraRecolección de basura
Recolección de basura
 
Retorno de valores
Retorno de valoresRetorno de valores
Retorno de valores
 
Metodos de mensajes
Metodos de mensajesMetodos de mensajes
Metodos de mensajes
 
La destrucción del objeto
La destrucción del objetoLa destrucción del objeto
La destrucción del objeto
 
Acceso al objeto
Acceso al objetoAcceso al objeto
Acceso al objeto
 
Agregar un metodo que toma parametros
Agregar un metodo que toma parametrosAgregar un metodo que toma parametros
Agregar un metodo que toma parametros
 

Asignación de variables de referencia de objeto

  • 1. Asignación de Variables de referencia de objeto. Variables de referencia de objeto actúan diferente de lo que puede esperar cuando produzca una asignación. Por ejemplo, ¿qué parece que el siguiente fragmento? Box b1 = new Box(); Box b2 = b1; Podría pensar que B2 se asigna una referencia a una copia del objeto que hace referencia b1. Es decir, podría pensar que el b1 y b2 se refieren a objetos separados y distintos. Sin embargo, esto sería un error. En su lugar, después de que se ejecuta este fragmento, b1 y b2 se ambos se refieren al mismo objeto. La asignación de b1 a b2 no asignar cualquier memoria o copiar cualquier parte del objeto original. Simplemente hace hacer referencia al mismo objeto como hace b1 b2. Por lo tanto, los cambios realizados en el objeto a través de b2 afectará el objeto a la que b1 se refiere, ya que son el mismo objeto. Esta situación se muestra aquí: Aunque ambos b1 y b2 se refieren al mismo objeto, que no están vinculados de ninguna otra forma. Por ejemplo, una cesión subsiguiente a b1 simplemente desenganche b1 desde el objeto original sin afectar el objeto o que afectan a b2. Por ejemplo: Box b1 = new Box(); Box b2 = b1; // ... b1 = null; Aquí, b1 se ha establecido en null, pero b2 puntos todavía al objeto original. Al asignar una variable de referencia de objeto a otra variable de referencia de objeto, no va a crear una copia del objeto, sólo está realizando una copia de la referencia.
  • 2. La introducción de métodos. Como se mencionó al principio de este capítulo, las clases suelen ser de dos cosas: variables y métodos de instancia. El tema de los métodos es una grande porque Java les da tanta potencia y flexibilidad. De hecho, gran parte del siguiente capítulo está dedicado a métodos. Sin embargo, hay algunos principios básicos que necesita aprender ahora para que usted puede empezar a añadir métodos a sus clases. Esta es la forma general de un método: type name(parameter-list) { // body of method } Aquí, que especifica el tipo de datos devueltos por el método. Esto puede ser cualquier tipo válido, incluidos los tipos de clase que cree. Si el método no devuelve un valor, el tipo de valor devuelto debe ser nulo. El nombre del método especificado por nombre. Esto puede ser cualquier identificador jurídico distintos de los ya utilizados por otros elementos dentro del ámbito actual. La lista de parámetros es una secuencia de pares de tipo y el identificador separados por comas. Los parámetros son esencialmente las variables que reciben el valor de los argumentos pasados al método cuando se le llama. Si el método no tiene parámetros, la lista de parámetros estará vacía. Métodos que tienen un tipo de retorno distinto de void regreso un valor a la rutina de llamada mediante el siguiente formulario de la declaración de retorno: return value; Aquí, el valor es el valor devuelto. En las siguientes secciones, se verá cómo crear varios tipos de métodos, incluyendo aquellas que tienen parámetros y aquellos que devuelven valores.