SlideShare una empresa de Scribd logo
1 de 22
Programación Orientada a Objetos
UNIDAD 2
ING. ALVARO ENRIQUE RUANO
Contenido
● Atributos
● Métodos
POO
● Es un método de implementación en el que los
programas se organizan como colecciones cooperativas
de objetos, cada uno de los cuales representan una
instancia de alguna clase, y cuyas clases son todas
miembros de una jerarquía de clases unidas mediante
relaciones de herencia.
● Grady Booch (Creador de Rational y promotor de UML)
Atributos
● Describen el estado de un objeto.
● También llamados datos o variables miembro, son
porciones de información que un objeto posee o
conoce de sí mismo
● Nos permiten diferenciar objetos, agregando
características distintas para cada uno.
● Consta de 2 partes: identificador y valor.
● Características que nos permiten describir un objeto.
Acceso a los Atributos
● El acceso o visibilidad a los atributos de una clase
puede ser modificado por medio de los llamados
“modificadores de acceso”.
● Los modificadores de acceso son palabras reservadas
de los lenguajes de programación que permiten
especificar la forma de acceder a los atributos.
● Los principales modificadores de acceso son: Público,
Privado, Protegido e Interno.
Acceso a los Atributos
● Público (+): El atributo puede ser accedido por
cualquier otro código, tanto en el mismo
componente de software (DLL, Exe, Paquete,
etc.), como en componentes externos. Es el
modificador más permisivo.
● Privado (-): El atributo solamente puede ser
accedido dentro de la clase a la que pertenece.
Es el modificador menos permisivo.
Acceso a los Atributos
● Protegido (#): El atributo puede ser accedido
desde la clase donde está declarado o cualquier
otra clase que se derive de esta (herencia).
● Interno (~): El atributo puede ser accedido por
cualquier código que se encuentre dentro del
mismo componente de software. También
llamado ”package-private” (java) o “Friend”
(VB.net).
El modificador de acceso por defecto es “Privado”.
Acceso a los Atributos
● Protegido Interno: Algunos lenguajes de
programación permiten la declaración de este
modificador mixto.
● En este caso, el atributo puede ser utilizado por
cualquier código dentro del mismo componente
de software.
● Al mismo tiempo, podrá ser accedido desde otros
componentes de software, siempre y cuando el
código sea parte de una clase derivada.
Acceso a las Clases
Los modificadores de acceso también pueden utilizarse al
momento de crear las clases, pero solamente aplican los
siguientes:
● Pública: La clase puede utilizarse por cualquier código.
● Interna: La clase puede utilizarse por cualquier código
que se encuentre dentro del mismo componente de
software.
Por defecto las clases se crean internas.
Las clases heredadas no pueden tener más accesibilidad de
sus clases padres.
Métodos
● Los métodos son la forma en que se
comunican los objetos unos con otros.
● Los datos de un objeto están disponibles para
ser manipulados sólo por los métodos del
propio objeto.
● Los métodos residen en el objeto y
determinan cómo actúan los objetos cuando
reciben mensajes.
Métodos
● Son procedimientos y funciones que se
invocan para actuar sobre los objetos y
especifican cómo se ejecuta un mensaje.
● El conjunto de mensajes a los que puede
responder un objeto se llama “protocolo”.
● Aplican los mismos modificadores de acceso
que para los atributos.
Métodos
● Ejemplo:
o Método:
 Carro.RecargarGasolina(int galones)
o Mensaje:
 ToyotaSedan.RecargarGasolina(50)
 BMWRojo.RecargarGasolina(275)
Representación gráfica
Clase
-atributoPrivado: Tipo
+atributoPublico: Tipo
#atributoProtegido: Tipo
~atributoInterno: Tipo
-operacionPrivada()
+operacionPublica()
#operacionProtegida()
~operacionInterna()
Representación gráfica
Alumno
+Carnet: Integer = 0
+ Nombre: String = “”
+Apellido: String = “”
+Promedio: Double = 0.0
-notas: List<Double>
+Alumno(in nombre: String, in apellido: String)
+AgregarNota(in nota: Double)
Ejemplo modificadores de
acceso en C#
Propiedades
oSon un híbrido entre el concepto de
método y atributo.
oPermiten la asignación (set) y lectura (get)
de los atributos de una clase.
oTienen varios usos como validación y
conversión de datos previo a almacenarse o
invocación de eventos.
Propiedades
oEl usuario de la propiedad las ve como si
fueran atributos.
oEl implementador de la propiedad las ve
como si fueran métodos.
oPueden ser de solo lectura (solo get), de
solo escritura (solo set) o de lectura-escritura
(set y get).
Ejemplo Propiedades C#
Ejemplo Propiedades C#
Ejemplo Propiedades C#
Ejemplo Propiedades C#
Gracias por su atención

Más contenido relacionado

La actualidad más candente

Programación Orientada a Objetos -Unidad 6 archivos
Programación Orientada a Objetos -Unidad 6 archivosProgramación Orientada a Objetos -Unidad 6 archivos
Programación Orientada a Objetos -Unidad 6 archivosJosé Antonio Sandoval Acosta
 
Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.Giancarlo Aguilar
 
Estructura de datos - Unidad 1: Introducción a las estructuras de datos
Estructura de datos - Unidad 1: Introducción a las estructuras de datosEstructura de datos - Unidad 1: Introducción a las estructuras de datos
Estructura de datos - Unidad 1: Introducción a las estructuras de datosJosé Antonio Sandoval Acosta
 
2. Casos de uso y diagramas de casos de uso
2. Casos de uso y diagramas de casos de uso2. Casos de uso y diagramas de casos de uso
2. Casos de uso y diagramas de casos de usoSaul Mamani
 
automatas finitos
 automatas finitos automatas finitos
automatas finitosAnel Sosa
 
Estructura básica de un programa en C++
Estructura básica de un programa en C++Estructura básica de un programa en C++
Estructura básica de un programa en C++Rosbelia Balza
 
Arreglos vectores pseint
Arreglos vectores pseintArreglos vectores pseint
Arreglos vectores pseintHEIVER CUESTA
 
Principios electricos y aplicaciones digitalesl sesion 1
Principios electricos y aplicaciones digitalesl sesion 1Principios electricos y aplicaciones digitalesl sesion 1
Principios electricos y aplicaciones digitalesl sesion 1Rodolfo Alcantara Rosales
 
Cuestionario
CuestionarioCuestionario
CuestionarioJose Nava
 
10 ejercicios-de-do-while
10 ejercicios-de-do-while10 ejercicios-de-do-while
10 ejercicios-de-do-whileDelvi Ramirez
 
diagrama de casos de uso del negocio y del sistema
diagrama de casos de uso del negocio y del sistemadiagrama de casos de uso del negocio y del sistema
diagrama de casos de uso del negocio y del sistemaUniversidad Tecnológica
 
Analisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A ObjetosAnalisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A Objetosyoiner santiago
 

La actualidad más candente (20)

Programación Orientada a Objetos -Unidad 6 archivos
Programación Orientada a Objetos -Unidad 6 archivosProgramación Orientada a Objetos -Unidad 6 archivos
Programación Orientada a Objetos -Unidad 6 archivos
 
22 ejercicios base de datos
22 ejercicios base de datos 22 ejercicios base de datos
22 ejercicios base de datos
 
Ejercicios uml
Ejercicios umlEjercicios uml
Ejercicios uml
 
Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.
 
Estructura de datos - Unidad 1: Introducción a las estructuras de datos
Estructura de datos - Unidad 1: Introducción a las estructuras de datosEstructura de datos - Unidad 1: Introducción a las estructuras de datos
Estructura de datos - Unidad 1: Introducción a las estructuras de datos
 
2. Casos de uso y diagramas de casos de uso
2. Casos de uso y diagramas de casos de uso2. Casos de uso y diagramas de casos de uso
2. Casos de uso y diagramas de casos de uso
 
automatas finitos
 automatas finitos automatas finitos
automatas finitos
 
Estructura básica de un programa en C++
Estructura básica de un programa en C++Estructura básica de un programa en C++
Estructura básica de un programa en C++
 
Arreglos vectores pseint
Arreglos vectores pseintArreglos vectores pseint
Arreglos vectores pseint
 
Diagramas uml
Diagramas umlDiagramas uml
Diagramas uml
 
Modelo relacional
Modelo relacionalModelo relacional
Modelo relacional
 
Tutorial de JFLAP
Tutorial de JFLAPTutorial de JFLAP
Tutorial de JFLAP
 
Principios electricos y aplicaciones digitalesl sesion 1
Principios electricos y aplicaciones digitalesl sesion 1Principios electricos y aplicaciones digitalesl sesion 1
Principios electricos y aplicaciones digitalesl sesion 1
 
Estructura Repetitiva MIENTRAS (While) con PSeInt
Estructura Repetitiva MIENTRAS (While) con PSeIntEstructura Repetitiva MIENTRAS (While) con PSeInt
Estructura Repetitiva MIENTRAS (While) con PSeInt
 
Cuestionario
CuestionarioCuestionario
Cuestionario
 
10 ejercicios-de-do-while
10 ejercicios-de-do-while10 ejercicios-de-do-while
10 ejercicios-de-do-while
 
diagrama de casos de uso del negocio y del sistema
diagrama de casos de uso del negocio y del sistemadiagrama de casos de uso del negocio y del sistema
diagrama de casos de uso del negocio y del sistema
 
3. Modelo ER - Relacional
3. Modelo ER - Relacional3. Modelo ER - Relacional
3. Modelo ER - Relacional
 
Analisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A ObjetosAnalisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A Objetos
 
Clases/Tipos de lenguajes de programación
Clases/Tipos de lenguajes de programaciónClases/Tipos de lenguajes de programación
Clases/Tipos de lenguajes de programación
 

Similar a POO Atributos Métodos

[ES] Programación orientada a objeto con java
[ES] Programación orientada a objeto con java[ES] Programación orientada a objeto con java
[ES] Programación orientada a objeto con javaEudris Cabrera
 
Porafolio unidad 1
Porafolio unidad 1Porafolio unidad 1
Porafolio unidad 1bchrmz
 
Porafolio unidad 1
Porafolio unidad 1Porafolio unidad 1
Porafolio unidad 1bchrmz
 
16 17 tecnologias python oop
16 17 tecnologias python oop16 17 tecnologias python oop
16 17 tecnologias python oopSoftware Guru
 
Tp final de programación
Tp final de programaciónTp final de programación
Tp final de programaciónEdu Bahamonde
 
Programacion orientada-a-objetos
Programacion orientada-a-objetosProgramacion orientada-a-objetos
Programacion orientada-a-objetosDon Augusto
 
Conceptos básicos de programación orientada a objetos (poo)
Conceptos básicos de programación orientada a objetos (poo)Conceptos básicos de programación orientada a objetos (poo)
Conceptos básicos de programación orientada a objetos (poo)Maria Garcia
 
Introduccion a la POO
Introduccion a la POOIntroduccion a la POO
Introduccion a la POOLibertad25
 
Diseño de Sistemas
Diseño de SistemasDiseño de Sistemas
Diseño de Sistemasjorgecaruci
 
programacion orientada a objetos con PHP .pptx
programacion orientada a objetos con PHP .pptxprogramacion orientada a objetos con PHP .pptx
programacion orientada a objetos con PHP .pptxRICARDOEDGARDOQUINTA
 
Action script 3_basic
Action script 3_basicAction script 3_basic
Action script 3_basicEdna Rheiner
 

Similar a POO Atributos Métodos (20)

[ES] Programación orientada a objeto con java
[ES] Programación orientada a objeto con java[ES] Programación orientada a objeto con java
[ES] Programación orientada a objeto con java
 
Porafolio unidad 1
Porafolio unidad 1Porafolio unidad 1
Porafolio unidad 1
 
Porafolio unidad 1
Porafolio unidad 1Porafolio unidad 1
Porafolio unidad 1
 
16 17 tecnologias python oop
16 17 tecnologias python oop16 17 tecnologias python oop
16 17 tecnologias python oop
 
Programación Orientada a Objetos para Python
Programación Orientada a Objetos para PythonProgramación Orientada a Objetos para Python
Programación Orientada a Objetos para Python
 
Tp final de programación
Tp final de programaciónTp final de programación
Tp final de programación
 
Glosario
GlosarioGlosario
Glosario
 
Programacion orientada-a-objetos
Programacion orientada-a-objetosProgramacion orientada-a-objetos
Programacion orientada-a-objetos
 
Conceptos básicos de programación orientada a objetos (poo)
Conceptos básicos de programación orientada a objetos (poo)Conceptos básicos de programación orientada a objetos (poo)
Conceptos básicos de programación orientada a objetos (poo)
 
PRESENTACION
PRESENTACIONPRESENTACION
PRESENTACION
 
Introduccion a la POO
Introduccion a la POOIntroduccion a la POO
Introduccion a la POO
 
Presentación P.O.O
Presentación P.O.OPresentación P.O.O
Presentación P.O.O
 
Diseño de Sistemas
Diseño de SistemasDiseño de Sistemas
Diseño de Sistemas
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 
C1 - Conceptos OOP
C1 - Conceptos OOPC1 - Conceptos OOP
C1 - Conceptos OOP
 
Aprendiendo objetos en c++
Aprendiendo objetos en c++Aprendiendo objetos en c++
Aprendiendo objetos en c++
 
Poo
PooPoo
Poo
 
programacion orientada a objetos con PHP .pptx
programacion orientada a objetos con PHP .pptxprogramacion orientada a objetos con PHP .pptx
programacion orientada a objetos con PHP .pptx
 
Unidad1 y 2
Unidad1 y 2Unidad1 y 2
Unidad1 y 2
 
Action script 3_basic
Action script 3_basicAction script 3_basic
Action script 3_basic
 

Más de Alvaro Enrique Ruano

Otras estructuras de datos (heap, tablas hash y diccionarios)
Otras estructuras de datos (heap, tablas hash y diccionarios)Otras estructuras de datos (heap, tablas hash y diccionarios)
Otras estructuras de datos (heap, tablas hash y diccionarios)Alvaro Enrique Ruano
 
Introducción al análisis de algoritmos
Introducción al  análisis de algoritmosIntroducción al  análisis de algoritmos
Introducción al análisis de algoritmosAlvaro Enrique Ruano
 
Ordenamientos por selección y Shell
Ordenamientos por selección y ShellOrdenamientos por selección y Shell
Ordenamientos por selección y ShellAlvaro Enrique Ruano
 
Ordenamientos burbuja e inserción
Ordenamientos burbuja e inserciónOrdenamientos burbuja e inserción
Ordenamientos burbuja e inserciónAlvaro Enrique Ruano
 
Programación Orientada a Objetos - Otras relaciones entre clases
Programación Orientada a Objetos - Otras relaciones entre clasesProgramación Orientada a Objetos - Otras relaciones entre clases
Programación Orientada a Objetos - Otras relaciones entre clasesAlvaro Enrique Ruano
 
Programación Orientada a Objetos - herencia y polimorfismo
Programación Orientada a Objetos - herencia y polimorfismoProgramación Orientada a Objetos - herencia y polimorfismo
Programación Orientada a Objetos - herencia y polimorfismoAlvaro Enrique Ruano
 
Análisis de una inversión en activos financieros negociados por medio de la B...
Análisis de una inversión en activos financieros negociados por medio de la B...Análisis de una inversión en activos financieros negociados por medio de la B...
Análisis de una inversión en activos financieros negociados por medio de la B...Alvaro Enrique Ruano
 
Solución de problemas y ciclo de vida del desarrollo de software
Solución de problemas y ciclo de vida del desarrollo de softwareSolución de problemas y ciclo de vida del desarrollo de software
Solución de problemas y ciclo de vida del desarrollo de softwareAlvaro Enrique Ruano
 

Más de Alvaro Enrique Ruano (17)

Resumen caso Enron
Resumen caso EnronResumen caso Enron
Resumen caso Enron
 
Otras estructuras de datos (heap, tablas hash y diccionarios)
Otras estructuras de datos (heap, tablas hash y diccionarios)Otras estructuras de datos (heap, tablas hash y diccionarios)
Otras estructuras de datos (heap, tablas hash y diccionarios)
 
Árboles Multicamino, B y B+
Árboles Multicamino, B y B+Árboles Multicamino, B y B+
Árboles Multicamino, B y B+
 
Árboles binarios, ABB y AVL
Árboles binarios, ABB y AVLÁrboles binarios, ABB y AVL
Árboles binarios, ABB y AVL
 
Estructuras de datos lineales
Estructuras de datos linealesEstructuras de datos lineales
Estructuras de datos lineales
 
Introducción al análisis de algoritmos
Introducción al  análisis de algoritmosIntroducción al  análisis de algoritmos
Introducción al análisis de algoritmos
 
Ordenamientos rápido y mezcla
Ordenamientos rápido y mezclaOrdenamientos rápido y mezcla
Ordenamientos rápido y mezcla
 
Ordenamientos por selección y Shell
Ordenamientos por selección y ShellOrdenamientos por selección y Shell
Ordenamientos por selección y Shell
 
Búsqueda secuencial y binaria
Búsqueda secuencial y binariaBúsqueda secuencial y binaria
Búsqueda secuencial y binaria
 
Recursividad directa e indirecta
Recursividad directa e indirectaRecursividad directa e indirecta
Recursividad directa e indirecta
 
Ordenamientos burbuja e inserción
Ordenamientos burbuja e inserciónOrdenamientos burbuja e inserción
Ordenamientos burbuja e inserción
 
Programación Orientada a Objetos - Otras relaciones entre clases
Programación Orientada a Objetos - Otras relaciones entre clasesProgramación Orientada a Objetos - Otras relaciones entre clases
Programación Orientada a Objetos - Otras relaciones entre clases
 
Programación Orientada a Objetos - herencia y polimorfismo
Programación Orientada a Objetos - herencia y polimorfismoProgramación Orientada a Objetos - herencia y polimorfismo
Programación Orientada a Objetos - herencia y polimorfismo
 
Paradigmas de programación
Paradigmas de programaciónParadigmas de programación
Paradigmas de programación
 
Técnicas de programación
Técnicas de programaciónTécnicas de programación
Técnicas de programación
 
Análisis de una inversión en activos financieros negociados por medio de la B...
Análisis de una inversión en activos financieros negociados por medio de la B...Análisis de una inversión en activos financieros negociados por medio de la B...
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
Solución de problemas y ciclo de vida del desarrollo de softwareSolución de problemas y ciclo de vida del desarrollo de software
Solución de problemas y ciclo de vida del desarrollo de software
 

Último

Manual de Usuario APPs_AppInventor-2023.pdf
Manual de Usuario APPs_AppInventor-2023.pdfManual de Usuario APPs_AppInventor-2023.pdf
Manual de Usuario APPs_AppInventor-2023.pdfmasogeis
 
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLO
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLOPARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLO
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLOSelenaCoronadoHuaman
 
Unidad_3_T1_AutomatasFinitos presentacion
Unidad_3_T1_AutomatasFinitos presentacionUnidad_3_T1_AutomatasFinitos presentacion
Unidad_3_T1_AutomatasFinitos presentacionarmando_cardenas
 
Segmentacion Segmantica_Modelos UNET and DEEPLABV3
Segmentacion Segmantica_Modelos UNET and DEEPLABV3Segmentacion Segmantica_Modelos UNET and DEEPLABV3
Segmentacion Segmantica_Modelos UNET and DEEPLABV3AlexysCaytanoMelndez1
 
Introducción a Funciones LENGUAJE DART FLUTTER
Introducción a Funciones LENGUAJE DART FLUTTERIntroducción a Funciones LENGUAJE DART FLUTTER
Introducción a Funciones LENGUAJE DART FLUTTEREMMAFLORESCARMONA
 
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...ITeC Instituto Tecnología Construcción
 
Caso de éxito de Hervian con el ERP Sage 200
Caso de éxito de Hervian con el ERP Sage 200Caso de éxito de Hervian con el ERP Sage 200
Caso de éxito de Hervian con el ERP Sage 200Opentix
 

Último (7)

Manual de Usuario APPs_AppInventor-2023.pdf
Manual de Usuario APPs_AppInventor-2023.pdfManual de Usuario APPs_AppInventor-2023.pdf
Manual de Usuario APPs_AppInventor-2023.pdf
 
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLO
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLOPARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLO
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLO
 
Unidad_3_T1_AutomatasFinitos presentacion
Unidad_3_T1_AutomatasFinitos presentacionUnidad_3_T1_AutomatasFinitos presentacion
Unidad_3_T1_AutomatasFinitos presentacion
 
Segmentacion Segmantica_Modelos UNET and DEEPLABV3
Segmentacion Segmantica_Modelos UNET and DEEPLABV3Segmentacion Segmantica_Modelos UNET and DEEPLABV3
Segmentacion Segmantica_Modelos UNET and DEEPLABV3
 
Introducción a Funciones LENGUAJE DART FLUTTER
Introducción a Funciones LENGUAJE DART FLUTTERIntroducción a Funciones LENGUAJE DART FLUTTER
Introducción a Funciones LENGUAJE DART FLUTTER
 
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...
 
Caso de éxito de Hervian con el ERP Sage 200
Caso de éxito de Hervian con el ERP Sage 200Caso de éxito de Hervian con el ERP Sage 200
Caso de éxito de Hervian con el ERP Sage 200
 

POO Atributos Métodos

  • 1. Programación Orientada a Objetos UNIDAD 2 ING. ALVARO ENRIQUE RUANO
  • 3. POO ● Es un método de implementación en el que los programas se organizan como colecciones cooperativas de objetos, cada uno de los cuales representan una instancia de alguna clase, y cuyas clases son todas miembros de una jerarquía de clases unidas mediante relaciones de herencia. ● Grady Booch (Creador de Rational y promotor de UML)
  • 4. Atributos ● Describen el estado de un objeto. ● También llamados datos o variables miembro, son porciones de información que un objeto posee o conoce de sí mismo ● Nos permiten diferenciar objetos, agregando características distintas para cada uno. ● Consta de 2 partes: identificador y valor. ● Características que nos permiten describir un objeto.
  • 5. Acceso a los Atributos ● El acceso o visibilidad a los atributos de una clase puede ser modificado por medio de los llamados “modificadores de acceso”. ● Los modificadores de acceso son palabras reservadas de los lenguajes de programación que permiten especificar la forma de acceder a los atributos. ● Los principales modificadores de acceso son: Público, Privado, Protegido e Interno.
  • 6. Acceso a los Atributos ● Público (+): El atributo puede ser accedido por cualquier otro código, tanto en el mismo componente de software (DLL, Exe, Paquete, etc.), como en componentes externos. Es el modificador más permisivo. ● Privado (-): El atributo solamente puede ser accedido dentro de la clase a la que pertenece. Es el modificador menos permisivo.
  • 7. Acceso a los Atributos ● Protegido (#): El atributo puede ser accedido desde la clase donde está declarado o cualquier otra clase que se derive de esta (herencia). ● Interno (~): El atributo puede ser accedido por cualquier código que se encuentre dentro del mismo componente de software. También llamado ”package-private” (java) o “Friend” (VB.net). El modificador de acceso por defecto es “Privado”.
  • 8. Acceso a los Atributos ● Protegido Interno: Algunos lenguajes de programación permiten la declaración de este modificador mixto. ● En este caso, el atributo puede ser utilizado por cualquier código dentro del mismo componente de software. ● Al mismo tiempo, podrá ser accedido desde otros componentes de software, siempre y cuando el código sea parte de una clase derivada.
  • 9. Acceso a las Clases Los modificadores de acceso también pueden utilizarse al momento de crear las clases, pero solamente aplican los siguientes: ● Pública: La clase puede utilizarse por cualquier código. ● Interna: La clase puede utilizarse por cualquier código que se encuentre dentro del mismo componente de software. Por defecto las clases se crean internas. Las clases heredadas no pueden tener más accesibilidad de sus clases padres.
  • 10. Métodos ● Los métodos son la forma en que se comunican los objetos unos con otros. ● Los datos de un objeto están disponibles para ser manipulados sólo por los métodos del propio objeto. ● Los métodos residen en el objeto y determinan cómo actúan los objetos cuando reciben mensajes.
  • 11. Métodos ● Son procedimientos y funciones que se invocan para actuar sobre los objetos y especifican cómo se ejecuta un mensaje. ● El conjunto de mensajes a los que puede responder un objeto se llama “protocolo”. ● Aplican los mismos modificadores de acceso que para los atributos.
  • 12. Métodos ● Ejemplo: o Método:  Carro.RecargarGasolina(int galones) o Mensaje:  ToyotaSedan.RecargarGasolina(50)  BMWRojo.RecargarGasolina(275)
  • 13. Representación gráfica Clase -atributoPrivado: Tipo +atributoPublico: Tipo #atributoProtegido: Tipo ~atributoInterno: Tipo -operacionPrivada() +operacionPublica() #operacionProtegida() ~operacionInterna()
  • 14. Representación gráfica Alumno +Carnet: Integer = 0 + Nombre: String = “” +Apellido: String = “” +Promedio: Double = 0.0 -notas: List<Double> +Alumno(in nombre: String, in apellido: String) +AgregarNota(in nota: Double)
  • 16. Propiedades oSon un híbrido entre el concepto de método y atributo. oPermiten la asignación (set) y lectura (get) de los atributos de una clase. oTienen varios usos como validación y conversión de datos previo a almacenarse o invocación de eventos.
  • 17. Propiedades oEl usuario de la propiedad las ve como si fueran atributos. oEl implementador de la propiedad las ve como si fueran métodos. oPueden ser de solo lectura (solo get), de solo escritura (solo set) o de lectura-escritura (set y get).
  • 22. Gracias por su atención