Clases
Enviado por Ju12lio • 8 de Febrero de 2024 • Apuntes • 931 Palabras (4 Páginas) • 106 Visitas
CLASES
¿QUE ES?
Es un modelo o prototipo que define las variables y métodos comunes a todos los objetos de cierta clase. Se menciona que una clase es una plantilla genérica para un conjunto de objetos de similares características.
CLASES VACIAS
¿Conjunto vacío?
Es un conjunto que no tiene elementos, también se le llama conjunto nulo. Generalmente se le representa por los símbolos: {}
TIPOS DE CLASES:
Class. Public: Son muy comunes, accesibles desde cualquier otra clase en la misma librería.
Class. Abstract: Son aquellas que tienen por lo menos un método abstracto. No implementan sus métodos, si no que dan las bases para que sean implementados en la herencia
Class. Final: Son las que permiten la cadena de herencia. Útiles por motivos de seguridad y eficiencia de un programa.
Class. Synchronizable: Especifica que sus métodos son sincronizados, evitando problemas con los thread, de forma que estos no pueden empezar a correr un método si no ha acabado el otro.
Características:
Nombre de la clase: Sirve para identificar a todos los objetos que tengan unas determinadas características
Conjunto de atributo: Datos miembros. El valor de los atributos representa el estado de cada objeto.
Conjunto de métodos: Permiten que los objetos cambien de estado, dependiendo del estado anterior que tuviera el objeto.
OBJETOS
¿QUE SON LOS OBJETOS?
Son tipos de datos abstractos (TDA) definidos por el programador. Son unidades que contienen datos y funciones que operen sobre estos datos.
ESTADO Y COMPORTAMIENTO:
Todo objeto en la poo tiene un estado y un comportamiento. Esto es así porque los objetos de la vida real comparten estas dos características.
ESTADO DE UN OBJETO:
Abarca todas las propiedades del objeto, y los valores actuales de cada una de esas propiedades
COMPORTAMIENTO DE UN OBJETO:
Es como un objeto actúa y reacciona, en términos de sus cambios de estado y de los mensajes que intercambian.
ABSTRACCIÓN
¿QUE ES?
Es como la característica especificas de un objeto, aquellas que los distinguen de los demás tipos y que lo logran definir limites conceptuales respecto a quien está haciendo abstracción.
PRINCIPIOS DE MINIMA SORPRESA:
Este principio establece que cuando dos elementos de una interfaz entran en conflicto o son ambiguos, el comportamiento del programa ha de ser el que genere la mínima sorpresa por parye del usuario.
ABSTRACCIONES QUE EXISTEN:
- Abstracción de entidades.
- Abstracción de acciones.
- Abstracción de maquinas virtuales.
- Abstracción de coincidencia.
MODULARIDAD
¿QUE ES?
Es la propiedad que permite subdividir una aplicación en partes más pequeñas llamadas módulos, cada una de las cuales debe ser tan independiente como sea posible d la aplicación en si y de las restantes partes.
PRINCIPIOS:
- Capacidad de descomponer un sistema complejo:
El problema en general lo divides en problemas más pequeños.
- Capacidad de componer a través de sus módulos:
nos ayuda a la comprensión del código y del sistema, también a la modificación del mismo
- Comprensión de sistema en partes:
Indica la posibilidad de componer el programa desde los problemas mas pequeños completando y resolviendo el problema en general.
CARACTERISTICAS DE LOS MODULOS:
- Puede usar a otros módulos.
- Contiene instrucciones, lógica de proceso y estructuras de datos.
- Pueden ser compilados de forma individual y usados o almacenados como bibliotecas.
- Pueden incluirse dentro d un programa
- Se pueden usar invocando un nombre y cero o más parámetros.
ENCAPSULAMIENTO
¿QUE ES?
Se denomina encapsulamiento al ocultamiento del estado, es decir, de los datos miembro de un objeto de manera que solo pueda cambiar mediante las operaciones definidas para ese objeto.
MODIFICADORES DE ACCESO:
- Publicc: Acceso total
- Private: Acceso únicamente desde la clase o estructura que los contiene.
- Internal: Acceso desde el mismo proyecto.
- Protected: Desde la misma clase o desde las clases que heredan
- Protected internal: combinan protected e internal y nos permite acceder desde el mismo proyecto o de clase que la derivan.
- Private protected: que permite acceder desde la clase actual o de la que derivan de ella.
HERENCIA
¿Qué es?
Es un mecanismo para la reutilización de software.
- La herencia nos permite derivar una nueva clase a partir de una existente.
- La clase existente es conocida como clase madre, o superclase, o clase base.
- La clase derivada también es conocida como clase hija o sub clase.
TIPOS DE HERENCIA:
Herencia de implementación:
La implementación de los métodos es heredada. Puede sobrescribirse en las clases derivadas.
Herencia de interfaz:
Solo se hereda la interfaz, no hay implementación a nivel de clase base.
...