programacion orientada a objetos en java(POO)

Introducción Teorica

Comprender el concepto de programación orientada a objetos puede ser un poco complicado al principio, pero la realidad esque al pensar en POO(programación orientada a objetos), los programas pueden ser inclusive mas faciles y sencillo de comprender. Pero entonces, ¿Como funciona la programación orientada a objetos?, para explicar su funcionamiento, haremos una comparación entre la programación estructurada tradicional y la POO, pero primero mira este video para darte una pequeña idea de como funcionan las clases y objetos que utilizamos en POO.

Video introduccion a POO

para descargar archivo .java usado en el ejemplo presiona aqui>>> descargar.

Ahora para un ejemplo un poco mas complejo…

Si tomaramos como ejemplo un programa en el cual  se simula como cae un pelota en programacion estructurada y en poo los algoritmos serian los siguientes:
En programación estructurada tradicional, un lenguaje de programación funcionaria de la siguiente manera:
1.Tomar pelota
2.Dejar caer pelota
3.la pelota cae al suelo
4.La pelota rebota
5.La pelota llega a un punto maximo de altura
6.vuelve a caer la pelota
7.La pelota permanece en el suelo

En cambio si usamos POO la forma de pensar del programa puede cambiar y ser de la siguiente manera:
Existe un objeto llamado “pelota”
1.La pelota tiene como propiedad una altura de la cual puede caer
2. La pelota tiene una fuerza de rebote
3. La pelota es de color x

Tal cual como se muestra en el video, en POO a un objeto (pelota o bola) se le pueden asignar valores para cada propiedad que posee, también en caso de crear mas de un objeto del mismo tipo, estas propiedades pueden ser del mismo tipo, pero con diferentes valores. Como ejemplo podríamos tener incluso 2 pelotas pero cada una con diferente color y diferente tamaño, fuerza de rebote, etc.

Pero entonces como seria la programación. Para esto en POO existen las llamadas “clases” y “metodos”, una clase se podria definir como el “cuerpo” de un objeto, por ejemplo: podriamos crear una clase llamada “pelota” y a la misma añadirle diferentes propiedades o bien “metodos”.
Un metodo son basicamente instrucciones en codigo dentro de una clase, por ejemplo, si la clase pelota tiene propiedades como el radio de la pelota, se puede crear un metodo para obtener ese valor, o bién un metodo para cambiar ese valor.  Estos conceptos pueden sonar un poco dificiles pero a medida que practiques haciendo programas podras ir entendiendolo mas facilmente.

Propiedades de la POO

Las caracteristicas de la programación orientada a objetos son las siguientes:

1.Herencia: Se refiere a que una clase(objeto) puede tener clases hijas, que son principalmente clases derivadas, por ejemplo: Si se tiene la clase padre “Perro” sus clases hijas pueden ser clases  que se refieran a razas especificas de perros, como “Labrador,Salchicha,Poodle,Doberman”, cada una de estas clases hijas tendra diferencias en sus propiedades, pero todas comparten el hecho de que siguen siendo perros.
2.Polimorfismo: Se refiere a que se pueden utilizar variables u objetos con el mismo nombre, sin embargo sus funciones cambian dependiendo del contexto en que fueron creados, el polimorfismo suele ser complicado de entender, pero lo explicaremos mas a fondo en un proximo articulo o video.
3.Encapcsulación: Significa que se puede encapsular “codigo”, por ejemplo, si se tiene un objeto llamado perro, el perro puede tener un metodo para correr, por lo tanto si se desea ejecutar la acción Perro.correr(); se puede hacer sin necesidad de conocer el codigo que esta implicito dentro de la instrucción “correr”, esto es muy util para reutilización de codigo, y para hacer la programación mas facil.
4.Abstracción: Se relaciona con utilizar propiedades de objetos sin necesidad de crear un objeto en si, esto quiere decir si existe el objeto “matematicas”, no es necesario crear el objeto, para utilizar sus metodos como pueden ser sumar, restar, o multiplicar.

Esta es una breve introducción acerca de la programación orientada a objetos, para comprender mejor a que se refiere, publicaremos videos mas detallados para que puedas comprender como programar en POO. Durante los proximos dias colocaremos los enlaces en este articulo.

Esperamos esta lección haya sido de utilidad.
Por favor vota o comenta en este articulo.

Acerca del autor:

Mi nombre es Jorge Villalobos, soy Colombiano de nacimiento y resido en México desde 2005,actualmente soy el creador de codigoprogramacion.com Soy ingeniero en tecnologías de información y comunicaciones y trabajo de tiempo completo desarrollando aplicaciones web. En general me considero un tipo normal, me gusta salir, divertirme, y uno de mis hobbies es programar y hacer tutoriales para compartir conocimiento, me gusta la pizza, el ajedrez y tomar una que otra cerveza los fines de semana. Espero que este proyecto ayude a ayudar a los demás.

Twitter del autor:

7 comments

  1. Fredy says:

    Excelente, y ahora saber lo lejos que has llegado.

  2. jos says:

    esta bien wey para explicar las clases de objetos y no se te entiende nada

  3. yuniorhdaga says:

    buen aporte

  4. Enrique says:

    Hola Jorge gracias por los tutoriales

  5. Jota says:

    Hola Jorge, lo primero darte las gracias por tus tutoriales.
    Tengo una duda respecto a la herencia, en el video todas las clases que heredan de Carro las creas dentro de la pestaña Carro.java .
    Mi duda es si se puede crear una clase que herede de Carro pero dentro de la pestaña Pelota.java .

    Un saludo.

  6. Santiago says:

    Exelentes guias para java, me ayudan mucho, muchas gracias :)

  7. Wiz says:

    Gracias por compartir me ayudo a comprender un poco mas!!

Leave a Reply to Enrique Cancel reply

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