Sie sind auf Seite 1von 2

24/4/2014

ENI Training - Libro online

Introduccin
Con Java, la nocin de objeto est omnipresente y precisa un mnimo de aprendizaje. En primer lugar, nos concentraremos en los principios de la programacin orientada a objetos y en su vocabulario asociado, para pasar luego a ponerlo todo en prctica con Java. En un lenguaje procedural clsico, el funcionamiento de una aplicacin est regido por una sucesin de llamadas a diferentes procedimientos y funciones disponibles en el cdigo. Estos procedimientos y funciones son los encargados de procesar los datos de la aplicacin representados por las variables de esta ltima. No hay relacin alguna entre los datos y el cdigo que los manipula. Por el contrario, en un lenguaje orientado a objetos, vamos a intentar agrupar el cdigo. Este agrupamiento es llamado clase. Por lo tanto, una aplicacin desarrollada con un lenguaje orientado a objetos, est formada por numerosas clases que representan los diferentes elementos procesados por la aplicacin. Las clases describirn las caractersticas de cada uno de los elementos. El ensamblado de estos elementos va a permitir el funcionamiento de la aplicacin. Este principio se utiliza ampliamente en otras disciplinas adems de la informtica. En la industria automovilstica, por ejemplo, seguramente no existe ningn constructor que disponga de un plano que contenga todas y cada una de las piezas que constituyen un vehculo. Por el contrario, cada subconjunto de un vehculo puede estar representado por un plano especfico (el chasis, la caja de cambios, el motor). Cada subconjunto se va descomponiendo a su vez hasta la pieza elemental (un perno, un pistn, una rueda dentada...). Es el ensamblado de todos estos elementos lo que permite la fabricacin de un vehculo. De hecho no es el ensamblado de los planos lo que permite la construccin del vehculo, sino el de las piezas fabricadas a partir de ellos. En una aplicacin informtica, ser el ensamblado de los objetos creados a partir de las clases lo que permitir el funcionamiento de la aplicacin. Los dos trminos, clase y objeto, suelen ser confundidos pero representan nociones bien distintas. La clase describe la estructura de un elemento mientras que el objeto representa un ejemplar creado a partir del modelo de dicha estructura. Tras su creacin, un objeto es independiente de otros objetos construidos a partir de la misma clase. Por ejemplo, despus de la fabricacin, la puerta de un coche podr ser pintada de un color distinto al de las otras puertas fabricadas con el mismo plano. Por el contrario, si el plano es modificado, todas las puertas fabricadas tras la modificacin se beneficiarn de los cambios aportados al plano (con el riesgo de no seguir siendo compatibles con versiones anteriores). Las clases estn constituidas por campos y mtodos. Los campos representan las caractersticas de los objetos. Estn identificadas por variables y es posible leer su contenido o asignarles un valor directamente. El robot que va a pintar una puerta cambiar el campo color de dicha puerta. Los mtodos representan acciones que un objeto puede efectuar. Son ejecutados mediante la creacin de procedimientos o de funciones en una clase. Esto slo es una faceta de la programacin orientada a objetos. Igualmente otros tres conceptos son fundamentales: La encapsulacin La herencia Le polimorfismo La encapsulacin consiste en esconder elementos no necesarios para la utilizacin de un objeto. Esta tcnica permite garantizar que el objeto sea utilizado correctamente. Se trata de un principio muy utilizado en otras disciplinas aparte de la informtica. Regresando al ejemplo de la industria de la automvil, conoce usted cmo funciona la caja de cambios de su vehculo? Para cambiar de marcha, modificar directamente la posicin de los engranajes? Afortunadamente, no. Los constructores tienen previstas soluciones ms prcticas para la manipulacin de la caja de cambios.
http://www.eni-training.com/client_net/mediabook.aspx?idR=65882 1/2

24/4/2014

ENI Training - Libro online

Los elementos visibles de una clase desde su exterior son denominados interfaz de clase. En el caso de nuestro coche, la palanca de cambios constituye la interfaz de la caja de cambios. Es a travs de ella que podr actuar sin riesgo sobre los mecanismos internos de la caja de cambios. La herencia permite la creacin de une nueva clase a partir de otra ya existente. La clase que sirve de modelo se llama clase base. La clase as creada hereda las caractersticas de su clase base. Tambin se la puede personalizar aadiendo caractersticas adicionales. Las clases creadas a partir de una clase base son denominadas clases derivadas. Este principio es utilizado tambin en el mundo industrial. Seguramente la caja de cambios de su coche comporta cinco marchas. A ciencia cierta, los ingenieros que concibieron esta pieza no partieron de cero. Retomaron el plano de la generacin anterior (cuatro marchas) y le aadieron elementos. De la misma manera, los ingenieros que reflexionan sobre la caja de cambios de seis marchas de su futuro coche retomarn la versin precedente. El polimorfismo es otra nocin importante en la programacin orientada a objetos. Gracias a ello, es posible utilizar varias clases de manera intercambiable incluso si el funcionamiento interno de estas clases muestra diferencias. Si usted sabe cambiar la marcha en un coche Peugeot, tambin sabr hacerlo en un Renault, y sin embargo los dos tipos de caja de cambios no fueron concebidos de la misma manera. Asociados al polimorfismo hay otros dos conceptos. La sobrecarga y la sobreescritura de mtodos. La sobrecarga es usada para disear en una clase, mtodos que compartan el mismo nombre pero que tengan un nmero o tipos de parmetros distintos. Se utiliza la sobreescritura cuando, en una clase derivada, se quiere modificar el funcionamiento de uno de los mtodos heredados. El nmero y el tipo de los parmetros se mantienen idnticos a los definidos en la clase base. Veamos la puesta en prctica de algunos de los principios fundamentales de la programacin orientada a objetos. Dado que el tema de este manual no versa sobre la mecnica automovilstica, aplicaremos los conceptos de la orientacin a objetos sobre el lenguaje Java.

http://www.eni-training.com/client_net/mediabook.aspx?idR=65882

2/2

Das könnte Ihnen auch gefallen