Herramientas de usuario

Herramientas del sitio


bloque4:clasesobjetos

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
bloque4:clasesobjetos [05/03/2018 10:44] – [Encapsulamiento y abstracción] Fernando Valdeónbloque4:clasesobjetos [05/03/2018 11:34] (actual) – borrado Fernando Valdeón
Línea 1: Línea 1:
-====== Clases y Objetos ====== 
- 
-===== Clase ===== 
- 
-===== Objeto ===== 
- 
-===== Instanciar una clase: Constructores ===== 
- 
-===== Variables de referencia ===== 
- 
-===== Modificadores de visibilidad o acceso ===== 
- 
-===== Métodos getters y setters ===== 
- 
-===== Palabra reservada: this ===== 
- 
-===== Sobrecarga de métodos y constructores ===== 
- 
-===== Modificador static ===== 
- 
-===== Inicialización de atributos de una clase ===== 
- 
-===== Recolector de basura ===== 
- 
-===== Clase Object ===== 
- 
-===== Encapsulamiento y abstracción ===== 
-La programación orientada a objetos (POO) es un paradigma de programación basado en unos pilares. Entre ellos podemos encontrar 4 principales:  
-**abstracción**, **encapsulamiento**, **herencia** y **polimorfimo**. 
- 
-La **abstracción** se puede entender como la representación de entidades (pueden ser de la vida real) mediante elementos de un programa. Definimos esos elementos mediante las clases (Coche, Vehiculo, Persona, Pasajero, etc) y los usamos mediante sus objetos.  
- 
-Además, estos elementos realizan una serie de operaciones, pero nosotros no tenemos por qué saber cómo se realizan están operaciones: el cómo se hace, formará parte de la clase, donde se definen cómo se hacen las cosas. A nosotros una clase nos ofrece una interfaz (métodos) mediante la cual realizar dichas operaciones, sin tener que preocuparnos de entender cómo se hacen o de implementar su funcionamiento cada vez que las usemos. Esto se conoce como **abstracción**. 
- 
-El concepto de **encapsulamiento** es otro pilar fundamental de la POO y está ligado a la abstracción. Consiste en aislar los miembros (propiedades y operaciones) del acceso exterior (ponerlos dentro de una clase). Así evitamos que otras partes del programa pueden modificar las propiedades de un objeto de forma errónea, y crearemos una interfaz para trabajar con el objeto y acceder a sus propiedades. Esta interfaz son los **métodos**. Es la forma en la que el objeto nos permite trabajar con él, sin poder tener acceso a su interior (implementación de operaciones, valor de las propiedades). 
- 
-La **herencia** y el **polimorfismo** se verán más adelante ya que también están ligados entre sí. 
-===== Otras palabras reservadas ===== 
-Las siguientes palabras clave se irán viendo a medida que trabajemos con nuestras clases y ampliando conocimientos: 
- 
-  * ''extends'' : Se usa para indicar cuál es la clase desde la que se hereda. 
-  * ''super'' : similar a ''this'', pero contiene una referencia a la superclase. 
-  * ''abstract'' : modificador para clases o métodos, se usa en las clases abstractas. 
-  * ''final'' : se aplica tanto a variables, clases o métodos, e indica que no se permiten //modificar//. 
-  * ''interface'' : similar a la palabra ''class'', define una clase abstracta pura, se conocen como interfaces. 
-  * ''implements'' : similar a ''extends'', se usa para indicar de qué interfaces se hereda. 
- 
----- 
- 
-(c) {{date> %Y}} Fernando Valdeón 
- 
  
bloque4/clasesobjetos.1520246669.txt.gz · Última modificación: 16/09/2024 20:53 (editor externo)