SlideShare ist ein Scribd-Unternehmen logo
1 von 15
Downloaden Sie, um offline zu lesen
Contenido 
• Envío de parámetros por valor 
y por referencia 
• Constructores 
• Sobrecarga 
• Comparación de objetos String 
con el método equals
Parámetros por Valor 
• El envío de parámetros por valor, se presenta cuando 
se invoca a un método con parámetros de tipo 
primitivos. 
• Al ejecutarse el método, se crean “copias” de los 
parámetros originales, se trabaja con la copia y al 
terminar no se afecta el original.
Parámetros por Valor 
public class Prueba{ double 
Public static void main(String[] a){ 
metodo1( parámetros x, y, …) 
} 
int 
char 
fl t 
byte 
long float h t 
boolean 
short 
public void metodo1(argumentos x’, y’, …){ 
instrucciones que no alteran los 
valores originales 
} 
} //fin Clase Prueba
Parámetros por Referencia 
• El envío de parámetros por referencia, se presenta 
cuando se invoca a un método con parámetros del 
tipo de una clase es decir, con objetos. 
• Al invocarse el método, éste recibe la referencia a 
memoria del objeto, por lo tanto puede modificar los 
atributos de dicho objeto.
Parámetros por Referencia 
public class Prueba{ String 
Public static void main(String[] a){ 
Nombre_Clase ref = new Nombre_Clase(); 
metodo1( parámetros ref , …) 
Triangulo 
Estudiante 
Punto 
Computador 
} Camisa 
Empleado 
….. 
public void metodo1(argumentos ref, ……)){ 
instrucciones que pueden alterar los 
atributos del objeto recibido como parámetro 
haciendo ref.atributo = valor ; 
} 
} // Fin Clase Prueba
Parámetros por Valor o Referencia? 
public class Estudiante{ 
String nombre; 
int edad; 
} fi l E t di t 
Estudiante.class 
fin clase Estudiante 
class Prueba{ 
public static void main(String[] a) { 
Estudiante e = new Estudiante(); 
e = Prueba.class 
e.edad 20; 
e.nombre = “www”; 
metodo1(e.edad); Valor: al terminar metodo1 e.edad es 
20 
metodo2(e); f i l i d 2 
} //fin main 
Referencia: al terminar metodo2 
e.edad es 21 y e.nombre es “zzz” 
public void metodo1(int edad){ 
edad = edad +1; 
} fin metodo1 
public void metodo2(Estudiante e){ 
e.edad = edad +1; 
e.nombre = “zzz”; 
}fin metodo 2 
} //Fin clase Prueba
Constructores 
• Son métodos especiales que sirven para proporcionar 
diferentes formas de crear un mismo objeto. Se caracterizan 
por: 
o Se llaman igual que la clase publica 
o No especifican tipo de retorno 
o Generalmente son públicos 
o Si el programador no lo codifica siempre existe uno por 
defecto 
o Puede estar sobrecargado 
o Se invoca con la palabra reservada new
Constructores 
Constructor por defecto: 
public class Estudiante{ 
St i b 
Aquí Java genera un 
String nombre; 
int edad; 
** 
constructor por defecto 
de esta forma: 
public Estudiante(){ } fin clase Estudiante 
p (){ 
} 
Este constructor se invoca desde cualquier otra clase 
así: 
Estudiante yo = new Estudiante();
Sobrecarga 
Se presenta cuando un método aparece mas de una vez 
dentro de una clase. Se tiene que cumplir que: 
•• Los métodos tengan exactamente el mismo nombre 
• Tengan el mismo tipo de retorno 
• Varíe su lista de argumentos ya sea en cantidad y/o 
tipo
Sobrecarga 
En el siguiente código metodo1 esta sobrecargado ya 
que en la primera aparición define un argumento de 
tipo int y en la segunda un argumento de tipo 
Estudiante
Sobrecarga de métodos 
1. public class Estudiante{ 
2. String nombre; 
3. int edad; 
4. } fin clase Estudiante 
5. class Prueba{ 
6. public static void main(String[] a) { 
7. Estudiante e = new Estudiante(); 
8. e.edad = 20; 
9. e.nombre = “www”; 
10. metodo1(e.edad); 
11. metodo2(e); 
12. } //fin main 
13. public void metodo1(int edad){ //metodo1 spbrecargado 
14. edad = edad +1; 
15. } fin metodo1 
16. public void metodo1(Estudiante e){//metodo1 spbrecargado 
17. e.edad = edad +1; 
18. e.nombre = “zzz”; 
19. }fin metodo1 
20. } //Fin clase Prueba
Sobrecarga de Constructores 
public class Estudiante { //Esta clase tiene 3 constructores sobrecargados 
String nombre; 
int edad; 
public Estudiante(){ 
nombre = “sin nombre” 
edad = 0; 
} 
public Estudiante(int edad, String nombre){ 
this.nombre = nombre // Con this podemos diferenciar entre parámetros 
this.edad = edad; // y atributos 
} 
public Estudiante(Estudiante e) { 
this.nombre = e.nombre 
this.edad = e.edad; 
} 
} fin clase Estudiante
Comparación con equals 
• El método equals esta presente en todos los 
objetos de java y en los nuestros, ya que esta 
definido en la superclase principal llamada Object. 
• Toda clase hereda de Object y por lo tanto hereda 
al método equals. 
• En particular la clase String define el método 
equals para comparar si dos cadenas de 
caracteres son exactamente iguales en cuanto a 
contenido.
Comparación con equals 
1. String s1 = ““xxx””; 
2. String s2 = “xxx”; 
En principio parecería que si preguntamos: 
s1 == s2 
obtendríamos cierto. Sin embargo, s1 y s2 son 
variables referencias diferentes, en otras palabras, son 
dos objetos String diferentes y por lo tanto: 
s1 == s2 Falso
Comparación con equals 
• La forma correcta de preguntar si dos objetos 
String diferentes son iguales en cuanto a su 
contenido es: 
S1.equals(S2) Verdadero 
• En conclusión, usemos el operador == solo para 
comparar variables de tipo primitivas y el método 
equals para comparar cadena de caracteres.

Weitere ähnliche Inhalte

Was ist angesagt?

programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetosjent46
 
11 Curso de POO en java - métodos constructores y toString()
11 Curso de POO en java - métodos constructores y toString()11 Curso de POO en java - métodos constructores y toString()
11 Curso de POO en java - métodos constructores y toString()Clara Patricia Avella Ibañez
 
Metodos Get y Set, finalmente revelados.
Metodos Get y Set, finalmente revelados.Metodos Get y Set, finalmente revelados.
Metodos Get y Set, finalmente revelados.Juan Carlos Espinoza
 
Clases en Java y todo lo relacionado
Clases en Java y todo lo relacionadoClases en Java y todo lo relacionado
Clases en Java y todo lo relacionadoJuan Carlos Espinoza
 
Propiedades De La Poo
Propiedades De La PooPropiedades De La Poo
Propiedades De La Pooda4
 
Unidad 2 poo_clases_y_objetos
Unidad 2 poo_clases_y_objetosUnidad 2 poo_clases_y_objetos
Unidad 2 poo_clases_y_objetosRulox Quiñones
 
Conceptos poo progra visual
Conceptos poo progra visualConceptos poo progra visual
Conceptos poo progra visualLibertad25
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a ObjetosUVMVirtual
 
Metodología de la programación orientada a objetos con c++ prev
Metodología de la programación orientada a objetos con c++ prevMetodología de la programación orientada a objetos con c++ prev
Metodología de la programación orientada a objetos con c++ prevjtk1
 
java (clases,herencias,encapsulamiento,.. )
java (clases,herencias,encapsulamiento,.. )java (clases,herencias,encapsulamiento,.. )
java (clases,herencias,encapsulamiento,.. )brayan0015
 
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)Unidad 2 ProgramacióN Orientada A Objetos (Repaso)
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)Sergio Sanchez
 
Programación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodosProgramación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodosAlvaro Enrique Ruano
 

Was ist angesagt? (20)

programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 
11 Curso de POO en java - métodos constructores y toString()
11 Curso de POO en java - métodos constructores y toString()11 Curso de POO en java - métodos constructores y toString()
11 Curso de POO en java - métodos constructores y toString()
 
03 java poo_parte_2
03 java poo_parte_203 java poo_parte_2
03 java poo_parte_2
 
Presentacion3
Presentacion3Presentacion3
Presentacion3
 
PROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOSPROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOS
 
Metodos Get y Set, finalmente revelados.
Metodos Get y Set, finalmente revelados.Metodos Get y Set, finalmente revelados.
Metodos Get y Set, finalmente revelados.
 
Clases en Java y todo lo relacionado
Clases en Java y todo lo relacionadoClases en Java y todo lo relacionado
Clases en Java y todo lo relacionado
 
Propiedades De La Poo
Propiedades De La PooPropiedades De La Poo
Propiedades De La Poo
 
Herencia
HerenciaHerencia
Herencia
 
Unidad 2 poo_clases_y_objetos
Unidad 2 poo_clases_y_objetosUnidad 2 poo_clases_y_objetos
Unidad 2 poo_clases_y_objetos
 
6 Curso de POO en Java - clases y objetos
6  Curso de POO en Java - clases y objetos6  Curso de POO en Java - clases y objetos
6 Curso de POO en Java - clases y objetos
 
Conceptos poo progra visual
Conceptos poo progra visualConceptos poo progra visual
Conceptos poo progra visual
 
Unidad 2 clases y objetos
Unidad 2 clases y objetosUnidad 2 clases y objetos
Unidad 2 clases y objetos
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 
Elementos De Una Clase
Elementos De Una ClaseElementos De Una Clase
Elementos De Una Clase
 
Metodología de la programación orientada a objetos con c++ prev
Metodología de la programación orientada a objetos con c++ prevMetodología de la programación orientada a objetos con c++ prev
Metodología de la programación orientada a objetos con c++ prev
 
java (clases,herencias,encapsulamiento,.. )
java (clases,herencias,encapsulamiento,.. )java (clases,herencias,encapsulamiento,.. )
java (clases,herencias,encapsulamiento,.. )
 
Aprendiendo objetos en c++
Aprendiendo objetos en c++Aprendiendo objetos en c++
Aprendiendo objetos en c++
 
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)Unidad 2 ProgramacióN Orientada A Objetos (Repaso)
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)
 
Programación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodosProgramación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodos
 

Ähnlich wie Presentacion5

JAVA_BASICO_modo_consola_introduccion.pptx
JAVA_BASICO_modo_consola_introduccion.pptxJAVA_BASICO_modo_consola_introduccion.pptx
JAVA_BASICO_modo_consola_introduccion.pptxFamiliaAyluardo
 
Clases metodos y atributos
Clases metodos y atributosClases metodos y atributos
Clases metodos y atributosRobert Wolf
 
Métodos constructores, método toString()
Métodos constructores, método toString()Métodos constructores, método toString()
Métodos constructores, método toString()Pablo Macon
 
U8.- Programacion Orientada a objetos II (2).pdf
U8.- Programacion Orientada a objetos II (2).pdfU8.- Programacion Orientada a objetos II (2).pdf
U8.- Programacion Orientada a objetos II (2).pdfJCarlosCrespo
 
Sesion 07 nivel_acceso_miembros_clases
Sesion 07 nivel_acceso_miembros_clasesSesion 07 nivel_acceso_miembros_clases
Sesion 07 nivel_acceso_miembros_clasesecodereck
 
Tema 4 clases_y_objetos
Tema 4 clases_y_objetosTema 4 clases_y_objetos
Tema 4 clases_y_objetosBelenMonse
 
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...David Zapateria Besteiro
 
Programacion orientada a objetos 1
Programacion orientada a objetos 1Programacion orientada a objetos 1
Programacion orientada a objetos 1mellcv
 
Introducción a la programación y la informática. Tema 5
Introducción a la programación y la informática. Tema 5Introducción a la programación y la informática. Tema 5
Introducción a la programación y la informática. Tema 5Andres Garcia Garcia
 

Ähnlich wie Presentacion5 (20)

JAVA_BASICO_modo_consola_introduccion.pptx
JAVA_BASICO_modo_consola_introduccion.pptxJAVA_BASICO_modo_consola_introduccion.pptx
JAVA_BASICO_modo_consola_introduccion.pptx
 
Clases metodos y atributos
Clases metodos y atributosClases metodos y atributos
Clases metodos y atributos
 
MéTodos En Java
MéTodos En JavaMéTodos En Java
MéTodos En Java
 
8.Clases y objetos Java
8.Clases y objetos Java8.Clases y objetos Java
8.Clases y objetos Java
 
Poo
PooPoo
Poo
 
Semana9b Vbr
Semana9b VbrSemana9b Vbr
Semana9b Vbr
 
Métodos constructores, método toString()
Métodos constructores, método toString()Métodos constructores, método toString()
Métodos constructores, método toString()
 
Java
JavaJava
Java
 
Guia poo
Guia pooGuia poo
Guia poo
 
U8.- Programacion Orientada a objetos II (2).pdf
U8.- Programacion Orientada a objetos II (2).pdfU8.- Programacion Orientada a objetos II (2).pdf
U8.- Programacion Orientada a objetos II (2).pdf
 
Conceptos basicos POO
Conceptos basicos POOConceptos basicos POO
Conceptos basicos POO
 
Lenguajes de Programación: Tutorial csharp
Lenguajes de Programación: Tutorial csharpLenguajes de Programación: Tutorial csharp
Lenguajes de Programación: Tutorial csharp
 
Sesion 07 nivel_acceso_miembros_clases
Sesion 07 nivel_acceso_miembros_clasesSesion 07 nivel_acceso_miembros_clases
Sesion 07 nivel_acceso_miembros_clases
 
4 manejo de_metodos
4 manejo de_metodos4 manejo de_metodos
4 manejo de_metodos
 
Tema 4 clases_y_objetos
Tema 4 clases_y_objetosTema 4 clases_y_objetos
Tema 4 clases_y_objetos
 
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
 
Tutorial 3
Tutorial 3Tutorial 3
Tutorial 3
 
Programacion orientada a objetos 1
Programacion orientada a objetos 1Programacion orientada a objetos 1
Programacion orientada a objetos 1
 
Lp2docclases
Lp2docclasesLp2docclases
Lp2docclases
 
Introducción a la programación y la informática. Tema 5
Introducción a la programación y la informática. Tema 5Introducción a la programación y la informática. Tema 5
Introducción a la programación y la informática. Tema 5
 

Mehr von Actuaria, Facultad de Ciencias, UNAM (10)

Diagrama er extendido
Diagrama er extendidoDiagrama er extendido
Diagrama er extendido
 
Presentacion6
Presentacion6Presentacion6
Presentacion6
 
Triangulo
TrianguloTriangulo
Triangulo
 
Tema4 buenas practicas
Tema4 buenas practicasTema4 buenas practicas
Tema4 buenas practicas
 
Tema3 modelo entidadrelacion
Tema3 modelo entidadrelacionTema3 modelo entidadrelacion
Tema3 modelo entidadrelacion
 
Tema2 bases dedatosrelacional
Tema2 bases dedatosrelacionalTema2 bases dedatosrelacional
Tema2 bases dedatosrelacional
 
Tema 1 base de datos
Tema 1   base de datosTema 1   base de datos
Tema 1 base de datos
 
P1
P1P1
P1
 
Presentacion2
Presentacion2Presentacion2
Presentacion2
 
Presentacion1
Presentacion1Presentacion1
Presentacion1
 

Presentacion5

  • 1. Contenido • Envío de parámetros por valor y por referencia • Constructores • Sobrecarga • Comparación de objetos String con el método equals
  • 2. Parámetros por Valor • El envío de parámetros por valor, se presenta cuando se invoca a un método con parámetros de tipo primitivos. • Al ejecutarse el método, se crean “copias” de los parámetros originales, se trabaja con la copia y al terminar no se afecta el original.
  • 3. Parámetros por Valor public class Prueba{ double Public static void main(String[] a){ metodo1( parámetros x, y, …) } int char fl t byte long float h t boolean short public void metodo1(argumentos x’, y’, …){ instrucciones que no alteran los valores originales } } //fin Clase Prueba
  • 4. Parámetros por Referencia • El envío de parámetros por referencia, se presenta cuando se invoca a un método con parámetros del tipo de una clase es decir, con objetos. • Al invocarse el método, éste recibe la referencia a memoria del objeto, por lo tanto puede modificar los atributos de dicho objeto.
  • 5. Parámetros por Referencia public class Prueba{ String Public static void main(String[] a){ Nombre_Clase ref = new Nombre_Clase(); metodo1( parámetros ref , …) Triangulo Estudiante Punto Computador } Camisa Empleado ….. public void metodo1(argumentos ref, ……)){ instrucciones que pueden alterar los atributos del objeto recibido como parámetro haciendo ref.atributo = valor ; } } // Fin Clase Prueba
  • 6. Parámetros por Valor o Referencia? public class Estudiante{ String nombre; int edad; } fi l E t di t Estudiante.class fin clase Estudiante class Prueba{ public static void main(String[] a) { Estudiante e = new Estudiante(); e = Prueba.class e.edad 20; e.nombre = “www”; metodo1(e.edad); Valor: al terminar metodo1 e.edad es 20 metodo2(e); f i l i d 2 } //fin main Referencia: al terminar metodo2 e.edad es 21 y e.nombre es “zzz” public void metodo1(int edad){ edad = edad +1; } fin metodo1 public void metodo2(Estudiante e){ e.edad = edad +1; e.nombre = “zzz”; }fin metodo 2 } //Fin clase Prueba
  • 7. Constructores • Son métodos especiales que sirven para proporcionar diferentes formas de crear un mismo objeto. Se caracterizan por: o Se llaman igual que la clase publica o No especifican tipo de retorno o Generalmente son públicos o Si el programador no lo codifica siempre existe uno por defecto o Puede estar sobrecargado o Se invoca con la palabra reservada new
  • 8. Constructores Constructor por defecto: public class Estudiante{ St i b Aquí Java genera un String nombre; int edad; ** constructor por defecto de esta forma: public Estudiante(){ } fin clase Estudiante p (){ } Este constructor se invoca desde cualquier otra clase así: Estudiante yo = new Estudiante();
  • 9. Sobrecarga Se presenta cuando un método aparece mas de una vez dentro de una clase. Se tiene que cumplir que: •• Los métodos tengan exactamente el mismo nombre • Tengan el mismo tipo de retorno • Varíe su lista de argumentos ya sea en cantidad y/o tipo
  • 10. Sobrecarga En el siguiente código metodo1 esta sobrecargado ya que en la primera aparición define un argumento de tipo int y en la segunda un argumento de tipo Estudiante
  • 11. Sobrecarga de métodos 1. public class Estudiante{ 2. String nombre; 3. int edad; 4. } fin clase Estudiante 5. class Prueba{ 6. public static void main(String[] a) { 7. Estudiante e = new Estudiante(); 8. e.edad = 20; 9. e.nombre = “www”; 10. metodo1(e.edad); 11. metodo2(e); 12. } //fin main 13. public void metodo1(int edad){ //metodo1 spbrecargado 14. edad = edad +1; 15. } fin metodo1 16. public void metodo1(Estudiante e){//metodo1 spbrecargado 17. e.edad = edad +1; 18. e.nombre = “zzz”; 19. }fin metodo1 20. } //Fin clase Prueba
  • 12. Sobrecarga de Constructores public class Estudiante { //Esta clase tiene 3 constructores sobrecargados String nombre; int edad; public Estudiante(){ nombre = “sin nombre” edad = 0; } public Estudiante(int edad, String nombre){ this.nombre = nombre // Con this podemos diferenciar entre parámetros this.edad = edad; // y atributos } public Estudiante(Estudiante e) { this.nombre = e.nombre this.edad = e.edad; } } fin clase Estudiante
  • 13. Comparación con equals • El método equals esta presente en todos los objetos de java y en los nuestros, ya que esta definido en la superclase principal llamada Object. • Toda clase hereda de Object y por lo tanto hereda al método equals. • En particular la clase String define el método equals para comparar si dos cadenas de caracteres son exactamente iguales en cuanto a contenido.
  • 14. Comparación con equals 1. String s1 = ““xxx””; 2. String s2 = “xxx”; En principio parecería que si preguntamos: s1 == s2 obtendríamos cierto. Sin embargo, s1 y s2 son variables referencias diferentes, en otras palabras, son dos objetos String diferentes y por lo tanto: s1 == s2 Falso
  • 15. Comparación con equals • La forma correcta de preguntar si dos objetos String diferentes son iguales en cuanto a su contenido es: S1.equals(S2) Verdadero • En conclusión, usemos el operador == solo para comparar variables de tipo primitivas y el método equals para comparar cadena de caracteres.