Características de los lenguajes de programación orientados a objetos
1. Modelo de programación
Todas las computadoras se componen de dos elementos: código y datos. Para ser precisos, algunos programas están escritos en torno a "lo que está sucediendo" y otros. está escrito en torno a "quién se ve afectado".
El primer estilo de programación se denomina "modelo orientado a procesos". Los programas escritos según este modelo se caracterizan por una serie de pasos lineales (código). debe entenderse como código que actúa sobre datos. Como C y otros lenguajes de procedimiento.
El segundo método de programación se denomina "modelo orientado a objetos". Los programas escritos según este modelo giran en torno a los datos del programa. (Objeto) y una interfaz estrictamente definida para que el objeto organice el programa. Se caracteriza por el acceso al código de control de datos. Al transferir el control a los datos, el modelo orientado a objetos tiene: abstracción, encapsulación, herencia y los beneficios del polimorfismo.
2. Abstracción
El elemento básico de la programación orientada a objetos es la abstracción, y los programadores gestionan la complejidad a través de la abstracción.
Gestión Un método eficaz de abstracción es. Utilice propiedades de clasificación jerárquica. Este método permite al usuario descomponer un sistema complejo según su significado físico y dividirlo en partes más manejables. Por ejemplo, un sistema informático es un objeto independiente en una computadora. monitor, teclado, disco duro, DVD-ROM, disquete, audio, etc. Cada uno de estos subsistemas está compuesto por componentes especializados. La clave es utilizar la abstracción jerárquica para administrar el sistema informático (o cualquier otro La complejidad de los sistemas complejos).
La esencia de la programación orientada a objetos: estos objetos abstractos pueden verse como entidades concretas que responden a mensajes que nos dicen qué hacer
/* (Según tengo entendido) <. /p>
*La computadora es una entidad. Quiero ingresar caracteres y el monitor los muestra, luego
*Computadora (objeto). Entrada (Propiedades del teclado) <. /p>
*Utilice capas para hacer referencia y operar, independientemente de cómo lo maneje la computadora internamente.
*Siempre que haya un objeto de computadora, puede responder a mi operación y yo escribo. en el teclado,
*El objeto de la computadora transmite este mensaje a la pantalla y la pantalla lo muestra
*/
El objeto de la computadora lo contiene Todo. las propiedades, así como las operaciones, son uno de los tres principios principales de la programación orientada a objetos:
3. Encapsulación
La encapsulación es una forma de combinar código y operaciones. el código Un mecanismo para agrupar datos para protegerlos de interferencias externas y uso indebido. La encapsulación puede entenderse como una envoltura protectora para evitar que otro código definido fuera del contenedor acceda arbitrariamente al código y los datos. El contenedor se controla a través de una interfaz bien definida. La ventaja de encapsular el código es que todos saben cómo acceder al código y pueden usarlo directamente sin preocuparse por los detalles de implementación y sin preocuparse por efectos secundarios impredecibles. >En JAVA, la unidad de encapsulación más básica es una clase. Una clase define el comportamiento (datos y código) que será compartido por un grupo de objetos. Cada objeto de una clase contiene su estructura y comportamiento definidos, estos objetos parecen. para ser moldeado a partir de un molde. Por lo tanto, los objetos también se denominan instancias de la clase.
Al definir una clase, es necesario especificar el código y los datos que componen la clase. Especialmente sí, los objetos definidos. por la clase se llaman variables miembro o variables de instancia. El código que opera los datos se llama método miembro. El método define cómo usar las variables miembro, lo que significa que el comportamiento y la interfaz de la clase están definidos por los métodos que operan. los datos de la instancia.
Dado que el propósito de una clase es encapsular la complejidad, existe un mecanismo dentro de la clase para ocultar la complejidad de la implementación. Por lo tanto, JAVA proporciona modos de acceso público y privado. La clase representa que los usuarios externos deben saber o pueden saber Todo. Solo se puede acceder a los datos del método privado a través del código de miembro de la clase. Esto garantiza que no sucedan cosas no deseadas.
Herencia Se refiere al proceso por el cual un objeto obtiene atributos de otro objeto. Es el segundo de los tres principios principales de la programación orientada a objetos. Apoya el concepto de clasificación jerárquica. gato, y el gato es un tipo de mamífero. Los mamíferos también son un tipo de animal. Si no se utiliza el concepto de jerarquía, cada objeto debe definirse claramente.
Defina todas sus características a través de la clasificación jerárquica, un objeto solo necesita definir sus atributos únicos en su clase y luego heredar sus atributos comunes de la clase principal. Por lo tanto, es precisamente debido al mecanismo de herencia que un objeto puede convertirse en un específico. instancia de una clase general. Una subclase profundamente heredada heredará todas las propiedades de cada uno de sus antepasados en la jerarquía de clases.
La herencia y la encapsulación pueden interactuar entre sí. Si una determinada clase encapsula ciertas propiedades, y cualquier subclase de ella contendrá las mismas propiedades, más todas las propiedades de cada subclase. Este es un concepto importante: los programas orientados a objetos crecen linealmente en lugar de geométricamente en complejidad. La nueva subclase hereda todas las propiedades de todos sus ancestros. no tendrá interacciones impredecibles con otro código en el sistema.
5. Polimorfismo
El polimorfismo significa que un método solo puede tener un nombre, pero puede tener muchas formas. Es decir, se pueden definir varios métodos con el mismo nombre en el programa, que se describe como "una interfaz, múltiples métodos" y se puede hacer referencia a ellos a través de los parámetros y tipos del método p>
6. uso combinado de encapsulación, herencia y polimorfismo
En un entorno compuesto de encapsulación, herencia y polimorfismo, los programadores pueden escribir programas que sean más robustos y más eficientes que los programas orientados a procesos. Las jerarquías de clases diseñadas son la base para la reutilización del código. La encapsulación permite a los programadores trasplantar programas sin modificar el código de las interfaces públicas. El polimorfismo permite a los programadores desarrollar código simple, fácil de entender y fácil de modificar. p>
Desde una perspectiva de herencia, los conductores dependen de la herencia para conducir diferentes tipos (subclases) de automóviles, ya sea un automóvil o un camión, o un Mercedes-Benz, ya sea una marca Fiat, el conductor puede. encuentre el volante, el freno de mano y la palanca de cambios. Después de conducir durante un período de tiempo, todos sabrán la diferencia entre la transmisión manual y la transmisión automática, porque en realidad conocen las similitudes entre las dos.
Desde la perspectiva del embalaje, el conductor siempre ve las características del paquete. El freno esconde mucha complejidad y tiene una apariencia tan simple que puede operarlo con los pies. La implementación del freno de mano y el tamaño de los neumáticos no tienen ningún impacto. la definición de la clase de freno.
Desde un punto de vista polimórfico, el sistema de frenos se puede dividir en bloqueo hacia adelante y bloqueo hacia atrás. El conductor solo usa el pie para frenar y detenerse. se puede utilizar para controlar varias implementaciones diferentes (bloqueo positivo o antibloqueo).
De esta manera, los programadores convierten cada componente independiente en el objeto del automóvil. Puede combinar varios componentes de un programa complejo para formar un programa consistente, sólido y fácil de mantener