Iniciación a Java: Orientación a Objetos (I)

La programación orientada a objetos es actualmente uno de los paradigmas más utilizados actualmente, en gran medida por su semejanza con el mundo real: el mundo está formado por objetos. Un objeto tiene determinadas características y algunos pueden realizar acciones.

Conceptos de Objeto y Clase

En la progrmación orientada a objetos (POO en adelante), se llama objeto a cualquier entidad que se puede representar en un programa, ya sea un objeto real o un concepto.

Una clase es un modelo a partir del cual se puede construir un objeto mediante un método llamado constructor. El objeto sería una instancia de la clase, con un identificador y un estado independientes.

Las características de cada clase se llaman atributos. La clase persona podría tener numerosos atributos: edad, sexo, altura, peso, etc. Las acciones que la clase puede realizar se llaman métodos. la clase persona consta de varios métodos, como por ejemplo andar, comer, dormir, etc.

Herencia y reutilización de código

Por otra parte, la POO tiene una gran ventaja: la reutilización de código, la cual se hace efectiva mediante la herencia. En POO, y en particular en Java, todos las clases heredan de la clase Object, por lo que se establece una jerarquía de objetos, en el que cada clase de Java puede heredar de UNA sóla clase. Por ejemplo, la clase hombre heredaría de la clase persona, y persona heredaría de la clase mamífero, y así sucesivamente. Una clase que hereda de otra mantiene los atributos y los métodos de la clase padre (o madre, que con esto de la paridad... :P), pudiendo añadir a su vez sus propios atributos y métodos propios.

Vemos que gracias a la herencia no sería necesario volver a escribir otra vez métodos repetidos en clases hijas y hermanas (como pueden ser hombre y mujer, ambos hijos de persona).

Próximamente una segunda entrega sobre la POO, dado que es un tema sobre el que se pueden escribir cientos de tésis.

Su voto: Nada Promedio: 2.8 (19 votos)

[...] Esta entrada viene de la primera parte de Programación Orientada a Objetos. [...]

Enviar un comentario nuevo

El contenido de este campo se mantiene privado y no se mostrará públicamente.
  • Las direcciones de las páginas web y las de correo se convierten en enlaces automáticamente.
  • Etiquetas HTML permitidas: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Saltos automáticos de líneas y de párrafos.
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>, <pre>. The supported tag styles are: <foo>, [foo].

Más información sobre opciones de formato