Escolar Documentos
Profissional Documentos
Cultura Documentos
Los objetos son clave para la comprensión de la tecnología orientada a objetos. Mira a tú
alrededor en este momento y encontrarás muchos ejemplos de objetos del mundo real: tu
perro, tu escritorio, tu televisor, tu bicicleta. Los objetos del mundo real comparten dos
características:
Todos tienen estado y comportamiento. Los perros tienen (el nombre del estado, el
color, la raza, el hambre) y el comportamiento (ladridos, ir a buscar, meneando la cola).
Identificar el estado y el comportamiento de objetos del mundo real es una gran manera de
empezar a pensar en términos de programación orientada a objetos.
Tome un minuto en estos momentos para observar los objetos del mundo real que están en su
área inmediata. Para cada objeto que ve, se haga dos preguntas:
Asegúrese de anotar sus observaciones y al hacerlo, notará que objetos del mundo real varían
en complejidad, su lámpara de escritorio puede tener sólo dos posibles estados (encendido y
apagado) y dos posibles comportamientos (encender, apagar), pero su radio de escritorio
podrían tener otros estados (encendido, apagado, volumen actual, la estación actual) y
comportamiento (encender, apagar, aumentar volumen, disminuir el volumen, buscar, explorar,
y sintonizar). Usted también puede notar que algunos de los objetos, a su vez, también
contienen otros objetos. Estas observaciones del mundo real, se traducen en el mundo de la
programación orientada a objetos.
Un objeto de software
Los objetos de software son conceptualmente similares a los objetos del mundo real: también
consisten de estado y relacionadas con el comportamiento. Un objeto almacena su estado en
los campos (variables en algunos lenguajes de programación) y expone su comportamiento a
través de métodos (funciones en algunos lenguajes de programación). Los métodos actúan
sobre el estado interno de un objeto y sirve como mecanismo principal de comunicación entre
objetos, es decir, definen su comportamiento y la forma de comunicarse entre ellos. El
ocultamiento del estado interno de un objeto y su necesidad de interacción con otros se
conoce como encapsulación de datos, que es un principio fundamental de la programación
orientada a objetos.
Modularidad: El código fuente para un objeto puede ser escrito y mantenido de forma
independiente del código fuente de otros objetos. Una vez creado, un objeto puede
transmitirse fácilmente en el interior del sistema.
Ocultando información: Al interactuar sólo con los métodos de un objeto, los detalles de
su implementación interna permanecen ocultos del mundo exterior.
Re-uso de código: Si un objeto que ya existe (tal vez escrito por otro desarrollador de
software), puede reutilizar ese objeto en su programa.
Esto permite a los especialistas aplicar complejos escenarios de test / debug, de las
tareas especificas de los objetos, Para aplicarlos a procesos particulares de su lógica
de negocios que requieren ejecutar.
En el mudo real frecuentemente encontramos objetos individuales del mismo tipo. Pueden
existir miles de bicicletas y todas se hacen en base a un mismo modelo y tipo. Cada bicicleta,
fue construida de la misma plantilla (blueprint), por que contienen los mismos componentes. En
términos de programación orientada a objetos, podemos decir que su bicicleta es una instancia
de una clase, conocida como bicicletas. En consecuencia, una clase es la plantilla de la cual se
crean los objetos (bicicleta) y les define sus características, comportamiento y la forma de
comunicarse entre ellos.
El siguiente ejemplo nos muestra una posible implementación de una clase llamada Bicicletas.
class Bicicletas {
int cadencia = 0;
int velocidad = 0;
int cambios = 1;
void imprimeEstado() {
System.out.println("Cadencia: "+ cadencia+" velocidad :
"+velocidad+" cambios: "+ cambios);
}
}
Podrá observar que la clase Bicicletas, no contiene un método main, esto es porque no es una
aplicación completa, debido a que el ejemplo muestra solo una plantilla Bicicletas, que puede
ser usada dentro de una aplicación, mas compleja. La responsabilidad de crear o instanciar los
objetos de la clase Bicicletas, pueden pertenecer a otra clase dentro de su misma aplicación
En el siguiente ejemplo podrá ver la creación de dos objetos de la clase Bicicletas, para poder
invocar a los métodos.
class BicicletasDemo {
public static void main(String[] args) {
class Bicicletas {
int cadencia = 0;
int velocidad = 0;
int cambios = 1;
void imprimeEstado() {
System.out.println("Cadencia: "+ cadencia+" Velocidad :
"+velocidad+" Cambios: "+ cambios);
}
}