Conceptos OOPS en Java con ejemplos

¿Qué es OOPS?

La Programación Orientada a Objetos es un concepto de programación que funciona según el principio de que los objetos son la parte más importante de su programa. Permite a los usuarios crear los objetos que desean y luego crear métodos para manejar esos objetos. Manipular estos objetos para obtener resultados es el objetivo de la Programación Orientada a Objetos.

Programación orientada a objetos popularmente conocida como OOP, se utiliza en un lenguaje de programación moderno como Java

Los conceptos básicos de OOPS son

1) Clase
La clase es un grupo de entidades similares. Es solo un componente lógico y no la entidad física. Por ejemplo, si tuviera una clase llamada “Carros costosos”, podría tener objetos como Mercedes, BMW, Toyota, etc. Sus propiedades (datos) pueden ser el precio o la velocidad de estos automóviles. Si bien los métodos se pueden realizar con estos automóviles son de conducción, marcha atrás, frenado, etc.

2) Objeto

Un objeto se puede definir como una instancia de una clase, y puede haber múltiples instancias de un objeto en un programa. Un objeto contiene tanto los datos como la función, que opera en los datos. Por ejemplo, silla, bicicleta, marcador, pluma, mesa, automóvil, etc.

3) Herencia

La herencia es un concepto OOPS en el que un objeto adquiere las propiedades y el comportamiento del objeto principal. Está creando una relación padre-hijo entre dos clases. Ofrece un mecanismo robusto y natural para organizar y estructurar cualquier software.

4) Polimorfismo

El polimorfismo se refiere a la capacidad de una variable, objeto o función para tomar múltiples formas. Por ejemplo, en inglés, el verbo “ejecutar” tiene un significado diferente si lo usa con “una computadora portátil”, “una carrera de pie” y “negocios”. Aquí, entendemos el significado de “ejecutar” según las otras palabras usado junto con él. Lo mismo también se aplica al polimorfismo.

5) Abstracción

Una abstracción es un acto de representación de características esenciales sin incluir detalles de fondo. Es una técnica de creación de un nuevo tipo de datos que es adecuado para una aplicación específica. Por ejemplo, mientras conduce un automóvil, no tiene que preocuparse por su funcionamiento interno. Aquí solo debes preocuparte por partes como el volante, los engranajes, el acelerador, etc.

6) Encapsulación

La encapsulación es una técnica OOP para envolver los datos y el código. En este concepto OOPS, las variables de una clase siempre están ocultas de otras clases. Solo se puede acceder usando los métodos de su clase actual. Por ejemplo, en la escuela, un estudiante no puede existir sin una clase.

7) Asociación

La asociación es una relación entre dos objetos. Define la diversidad entre los objetos. En este concepto de OOP, todos los objetos tienen su ciclo de vida separado, y no hay propietario. Por ejemplo, muchos estudiantes pueden asociarse con un profesor, mientras que un alumno también puede asociarse con varios profesores.

8) Agregación

En esta técnica, todos los objetos tienen su ciclo de vida separado. Sin embargo, hay propiedad tal que el objeto secundario no puede pertenecer a otro objeto primario. Por ejemplo, considere el departamento de clase / objetos y el profesor. Aquí, un solo maestro no puede pertenecer a múltiples departamentos, pero incluso si eliminamos el departamento, el objeto maestro nunca será destruido.

9) Composición

Una composición es una forma especializada de Agregación. También se llama relación de “muerte”. Los objetos secundarios no tienen su ciclo de vida así que cuando el objeto primario elimina todos los objetos secundarios también se eliminarán automáticamente. Para eso, tomemos un ejemplo de Casa y habitaciones. Cualquier casa puede tener varias habitaciones. Una habitación no puede formar parte de dos casas diferentes. Por lo tanto, si elimina la sala de la casa también se eliminará.

Ventajas de OOPS:

  • OOP ofrece una estructura modular clara y fácil de entender para los programas.
  • Los objetos creados para programas orientados a objetos se pueden reutilizar en otros programas. Por lo tanto, ahorra un importante costo de desarrollo.
  • Los programas grandes son difíciles de escribir, pero si el equipo de desarrollo y diseño sigue el concepto OOPS, entonces pueden diseñar mejor con defectos mínimos.
  • También mejora la modularidad del programa porque cada objeto existe de forma independiente.

Comparación de OOPS con otros estilos de programación con la ayuda de un ejemplo

Comprendamos, por ejemplo, wow OOPs es diferente a otros enfoques de orogramming.

Los lenguajes de programación se pueden clasificar en 3 tipos principales

  1. Lenguajes de programación no estructurados:el más primitivo de todos los lenguajes de programación con flujo de control secuencial. El código se repite a través del programa
  2. Lenguajes de programación estructurada:tiene un flujo de control no secuencial. El uso de funciones permite la reutilización del código.
  3. Programación orientada a objetos: combina datos y acción en conjunto

Comprendamos estos 3 tipos con un ejemplo.

Supongamos que desea crear un software bancario con funciones como

  1. Depositar
  2. Retirar
  3. Mostrar saldo

Lenguajes de programación no estructurados

Los primeros de todos los lenguajes de programación fueron lenguaje de programación no estructurado. Un código de aplicación bancaria muy elemental en el lenguaje de programación no estructurado tendrá dos variables de un número de cuenta y otra para el saldo de la cuenta.

Supongamos que se hace un depósito de 100 dólares.

A continuación, debe mostrar el saldo de la cuenta.

Ahora se retira la cantidad de 50 dólares.

De nuevo, debe mostrar el saldo de la cuenta.

Para cualquier otra operación de depósito o retiro, codificará para repetir las mismas líneas una y otra vez.

Programación estructurada

Con la llegada de la programación estructurada, las líneas repetidas en el código se colocaron en estructuras tales como funciones o métodos. Siempre que sea necesario, se realiza una simple llamada a la función.

Programación orientada a objetos

En nuestro programa, estamos tratando con datos o realizando operaciones específicas sobre los datos.

De hecho, tener datos y realizar ciertas operaciones sobre esos datos es una característica muy básica en cualquier programa de software.

Los expertos en Programación de Software pensaron en combinar Datos y Operaciones. Por lo tanto, el nacimiento de la Programación Orientada a Objetos que comúnmente se llama OOPS.

El mismo código en OOPS tendrá los mismos datos y alguna acción realizada en esos datos.

Al combinar datos y acciones, obtendremos muchas ventajas sobre la programación estructural,

  • Abstracción
  • Encapsulación
  • Herencia
  • Polimorfismo

Se discuten en mayor detalle en tutoriales posteriores

0 replies

Leave a Reply

Want to join the discussion?
Feel free to contribute!

Leave a Reply

Your email address will not be published. Required fields are marked *