SlideShare una empresa de Scribd logo
21
Lo más leído
22
Lo más leído
25
Lo más leído
Constructores y
Destructores
UNIDAD 2
ING. ALVARO ENRIQUE RUANO
Contenido
● Sobrecarga
● Constructores
● Destructores
Sobrecarga
● Permite nombrar con el mismo identificador 2
o más métodos. (los parámetros deben ser
distintos).
● Estos métodos pueden realizar acciones
diferentes.
● El compilador decidirá qué método usar,
dependiendo de los parámetros que se
envíen.
Sobrecarga
Constructores
● Un constructor es un método que tiene el
mismo nombre de la clase y que tiene el
propósito de inicializar los atributos y
variables cuando se instancia la clase.
Constructores
● Una clase puede tener varios
constructores (sobrecarga), de los cuales
se elige el correcto para ejecutar según la
cantidad y tipo de dato de los parámetros
con que se está instanciando el objeto.
Constructores
● Si no se ha escrito ningún constructor, el
compilador proporciona un constructor
automáticamente, aunque dicho
constructor no realiza ninguna
inicialización de variables.
Constructores
● Un constructor es sintácticamente igual a
un procedimiento.
● Por definición, un constructor no puede
devolver ningún valor, por lo que su tipo
de retorno siempre es “void”. Dado que
siempre será así, en su declaración se
omite esta sección.
Constructores
● Un constructor puede especificar
cualquier cantidad de parámetros.
● A un constructor que no tiene parámetros
se le denomina, constructor por defecto
porque inicializa todas las variables a un
valor por defecto.
Constructores C#
Constructores C#
Constructores VB.Net
Constructores C++
Constructores
● Cuando existe una relación de herencia
entre dos clases y se instancia un
objeto de la clase derivada, se debe
ejecutar el constructor de la clase
padre.
● Esta llamada se puede realizar de
forma explícita por medio de la palabra
reservada “base”.
Constructores
● En caso que no se llame explícitamente,
el compilador implícitamente hará la
llamada al “constructor por defecto” de
la clase padre.
● Si no existe un constructor por defecto
para la clase padre, se debe declarar la
llamada de forma explícita en la clase
derivada.
Constructores C#
Ejemplo de llamada explicita
a un constructor de la Clase
Base (herencia).
Constructores C++
Ejemplo de llamada implícita
a constructores de las clases
base en Herencia Múltiple
Constructores C++
Parte 1
Ejemplo de orden de llamado
a constructores en Herencia
Simple con atributos de tipo
objeto (llamas implícitas).
Constructores C++
Parte 2
Ejemplo de orden de llamado
a constructores en Herencia
Simple con atributos de tipo
objeto (llamas implícitas).
Constructores C++
Parte 3
Ejemplo de orden de llamado
a constructores en Herencia
Simple con atributos de tipo
objeto (llamas implícitas).
Destructores
● Son la contraparte de los constructores.
● Son procedimientos que tienen el mismo
nombre de la clase precedido por el
símbolo “~” o en algunos casos por la
palabra clave “destructor”.
Destructores
● En el caso de que no se incluya un
destructor, el compilador proporciona un
por defecto.
● Solo puede haber un destructor por clase.
● Los constructores no pueden tener
argumentos ni devolver valores ya que son
llamados automáticamente cuando el
objeto deja de existir.
Destructores
● El uso más frecuente de un destructor es
liberar memoria que fue asignada por el
constructor.
● En C++ los destructores de los objetos se
llaman de la siguiente forma:
● Si tiene ambito de archivo, se llama cuando
termina el programa principal
● Si el objeto se asignó con el operador new, el
destructor se llama con el operador delete.
Destructores
● En C# la memoria se libera
automáticamente, a través de un
recolector automático de basura
(Garbage Collector) que llama a los
destructores a partir del momento en ql
que se sabe que un objeto ya no va a ser
utilizado.
Gracias por su atención

Más contenido relacionado

PPT
Programación Orientada a Objetos.ppt
PPTX
Programación Orientada a Objetos - Unidad 2: clases y objetos
PPTX
Pilares de la POO
PPTX
Conceptos de POO (Programacion Orientada a Objetos)
PDF
6 Curso de POO en Java - clases y objetos
PPTX
Programacion orientada a objetos Unidad 1-intro al paradigma poo
PDF
8b Curso de POO en java - paso de diagrama clases a java 1
PDF
Palabras Reservadas en C++
Programación Orientada a Objetos.ppt
Programación Orientada a Objetos - Unidad 2: clases y objetos
Pilares de la POO
Conceptos de POO (Programacion Orientada a Objetos)
6 Curso de POO en Java - clases y objetos
Programacion orientada a objetos Unidad 1-intro al paradigma poo
8b Curso de POO en java - paso de diagrama clases a java 1
Palabras Reservadas en C++

La actualidad más candente (20)

PPT
Ejercicios
PPT
Herencia - Programación Orientada a Objetos
PPT
Poo 3 herencia
PPTX
Librerias Básicas y sus Funciones Lenguaje de Programación C
PPTX
Características de sumadores, codificadores, decodificadores, multiplexores y...
PPT
PPTX
Programación Orientada a Objetos - atributos y métodos
PDF
Ejercicios resueltos de c++
PPTX
Java pilas (Stacks) y colas (Queues)
PDF
Multiplexor 4 Entradas 1 Salida (4-1)
PPTX
Diferentes tipos de flip flops (jk, sr, d, t) sus tablas de verdad,
PPTX
Arreglos c++
PPTX
Principios electricos y aplicaciones digitalesl sesion 1
PPT
Métodos POO
PPTX
Librerias de C++
PPTX
Pilas, colas, y listas estructura de datos
PPT
Código intermedio
PDF
Analizador Léxico en C++
DOCX
Ejercicios de matrices y vectores en c++
Ejercicios
Herencia - Programación Orientada a Objetos
Poo 3 herencia
Librerias Básicas y sus Funciones Lenguaje de Programación C
Características de sumadores, codificadores, decodificadores, multiplexores y...
Programación Orientada a Objetos - atributos y métodos
Ejercicios resueltos de c++
Java pilas (Stacks) y colas (Queues)
Multiplexor 4 Entradas 1 Salida (4-1)
Diferentes tipos de flip flops (jk, sr, d, t) sus tablas de verdad,
Arreglos c++
Principios electricos y aplicaciones digitalesl sesion 1
Métodos POO
Librerias de C++
Pilas, colas, y listas estructura de datos
Código intermedio
Analizador Léxico en C++
Ejercicios de matrices y vectores en c++
Publicidad

Similar a Programación Orientada a Objetos - constructores y destructores (20)

PPT
El lenguaje de programacion C++ - Entorno de prog
PPT
El lenguaje C++ (1).ppt
PPT
El lenguaje C++.ppt
PPTX
Metodos Constructor Y Destructor
PPTX
Presentacion de c_
PPTX
Presentacion de c_(2)
PPT
Poo
PDF
Definición de clases en POO
PPT
programacion orientada a objetos
PPT
Constructor Y Destructor
PPTX
Presentación de Tipos de datos para c++ de programacion
PPTX
Tipos de datos_para_c_
PPTX
Vanessa farinango
PPTX
Constructores uso
PDF
PROGRAMACIÓN ORIENTADA A OBJETOS
PPT
9. Creacion Y Destruccion De Objetos
PDF
Sesion 4 objetos y clases
PPTX
uso Constructores
DOCX
Investigacion sobre carga de metodos
PPTX
POO Unidad 2 con Java temario de unidad sobre clases, herencia, métodos.pptx
El lenguaje de programacion C++ - Entorno de prog
El lenguaje C++ (1).ppt
El lenguaje C++.ppt
Metodos Constructor Y Destructor
Presentacion de c_
Presentacion de c_(2)
Poo
Definición de clases en POO
programacion orientada a objetos
Constructor Y Destructor
Presentación de Tipos de datos para c++ de programacion
Tipos de datos_para_c_
Vanessa farinango
Constructores uso
PROGRAMACIÓN ORIENTADA A OBJETOS
9. Creacion Y Destruccion De Objetos
Sesion 4 objetos y clases
uso Constructores
Investigacion sobre carga de metodos
POO Unidad 2 con Java temario de unidad sobre clases, herencia, métodos.pptx
Publicidad

Más de Alvaro Enrique Ruano (17)

PDF
Resumen caso Enron
PDF
Otras estructuras de datos (heap, tablas hash y diccionarios)
PDF
Árboles Multicamino, B y B+
PDF
Árboles binarios, ABB y AVL
PDF
Estructuras de datos lineales
PDF
Introducción al análisis de algoritmos
PPTX
Ordenamientos rápido y mezcla
PPTX
Ordenamientos por selección y Shell
PPTX
Búsqueda secuencial y binaria
PPTX
Recursividad directa e indirecta
PPTX
Ordenamientos burbuja e inserción
PPTX
Programación Orientada a Objetos - Otras relaciones entre clases
PPTX
Programación Orientada a Objetos - herencia y polimorfismo
PPTX
Paradigmas de programación
PPTX
Técnicas de programación
DOCX
Análisis de una inversión en activos financieros negociados por medio de la B...
PPTX
Solución de problemas y ciclo de vida del desarrollo de software
Resumen caso Enron
Otras estructuras de datos (heap, tablas hash y diccionarios)
Árboles Multicamino, B y B+
Árboles binarios, ABB y AVL
Estructuras de datos lineales
Introducción al análisis de algoritmos
Ordenamientos rápido y mezcla
Ordenamientos por selección y Shell
Búsqueda secuencial y binaria
Recursividad directa e indirecta
Ordenamientos burbuja e inserción
Programación Orientada a Objetos - Otras relaciones entre clases
Programación Orientada a Objetos - herencia y polimorfismo
Paradigmas de programación
Técnicas de programación
Análisis de una inversión en activos financieros negociados por medio de la B...
Solución de problemas y ciclo de vida del desarrollo de software

Último (6)

DOCX
trabajo programacion.docxxdxxxddxdxxdxdxxxdxxdxdxd
PDF
Su punto de partida en la IA: Microsoft 365 Copilot Chat
PDF
AutoCAD Herramientas para el futuro, Juan Fandiño
PPTX
sistemas de informacion.................
PPTX
Conceptos basicos de Base de Datos y sus propiedades
PPTX
Derechos_de_Autor_y_Creative_Commons.pptx
trabajo programacion.docxxdxxxddxdxxdxdxxxdxxdxdxd
Su punto de partida en la IA: Microsoft 365 Copilot Chat
AutoCAD Herramientas para el futuro, Juan Fandiño
sistemas de informacion.................
Conceptos basicos de Base de Datos y sus propiedades
Derechos_de_Autor_y_Creative_Commons.pptx

Programación Orientada a Objetos - constructores y destructores

  • 3. Sobrecarga ● Permite nombrar con el mismo identificador 2 o más métodos. (los parámetros deben ser distintos). ● Estos métodos pueden realizar acciones diferentes. ● El compilador decidirá qué método usar, dependiendo de los parámetros que se envíen.
  • 5. Constructores ● Un constructor es un método que tiene el mismo nombre de la clase y que tiene el propósito de inicializar los atributos y variables cuando se instancia la clase.
  • 6. Constructores ● Una clase puede tener varios constructores (sobrecarga), de los cuales se elige el correcto para ejecutar según la cantidad y tipo de dato de los parámetros con que se está instanciando el objeto.
  • 7. Constructores ● Si no se ha escrito ningún constructor, el compilador proporciona un constructor automáticamente, aunque dicho constructor no realiza ninguna inicialización de variables.
  • 8. Constructores ● Un constructor es sintácticamente igual a un procedimiento. ● Por definición, un constructor no puede devolver ningún valor, por lo que su tipo de retorno siempre es “void”. Dado que siempre será así, en su declaración se omite esta sección.
  • 9. Constructores ● Un constructor puede especificar cualquier cantidad de parámetros. ● A un constructor que no tiene parámetros se le denomina, constructor por defecto porque inicializa todas las variables a un valor por defecto.
  • 14. Constructores ● Cuando existe una relación de herencia entre dos clases y se instancia un objeto de la clase derivada, se debe ejecutar el constructor de la clase padre. ● Esta llamada se puede realizar de forma explícita por medio de la palabra reservada “base”.
  • 15. Constructores ● En caso que no se llame explícitamente, el compilador implícitamente hará la llamada al “constructor por defecto” de la clase padre. ● Si no existe un constructor por defecto para la clase padre, se debe declarar la llamada de forma explícita en la clase derivada.
  • 16. Constructores C# Ejemplo de llamada explicita a un constructor de la Clase Base (herencia).
  • 17. Constructores C++ Ejemplo de llamada implícita a constructores de las clases base en Herencia Múltiple
  • 18. Constructores C++ Parte 1 Ejemplo de orden de llamado a constructores en Herencia Simple con atributos de tipo objeto (llamas implícitas).
  • 19. Constructores C++ Parte 2 Ejemplo de orden de llamado a constructores en Herencia Simple con atributos de tipo objeto (llamas implícitas).
  • 20. Constructores C++ Parte 3 Ejemplo de orden de llamado a constructores en Herencia Simple con atributos de tipo objeto (llamas implícitas).
  • 21. Destructores ● Son la contraparte de los constructores. ● Son procedimientos que tienen el mismo nombre de la clase precedido por el símbolo “~” o en algunos casos por la palabra clave “destructor”.
  • 22. Destructores ● En el caso de que no se incluya un destructor, el compilador proporciona un por defecto. ● Solo puede haber un destructor por clase. ● Los constructores no pueden tener argumentos ni devolver valores ya que son llamados automáticamente cuando el objeto deja de existir.
  • 23. Destructores ● El uso más frecuente de un destructor es liberar memoria que fue asignada por el constructor. ● En C++ los destructores de los objetos se llaman de la siguiente forma: ● Si tiene ambito de archivo, se llama cuando termina el programa principal ● Si el objeto se asignó con el operador new, el destructor se llama con el operador delete.
  • 24. Destructores ● En C# la memoria se libera automáticamente, a través de un recolector automático de basura (Garbage Collector) que llama a los destructores a partir del momento en ql que se sabe que un objeto ya no va a ser utilizado.
  • 25. Gracias por su atención