Вы находитесь на странице: 1из 6

La POO es una forma de programar que trata de encontrar una solucin a estos

problemas. Introduce nuevos conceptos, que superan y amplan conceptos


antiguos ya conocidos. Entre ellos destacan los siguientes:

Clase
Definiciones de las propiedades y comportamiento de un tipo de objeto concreto.
La instanciacin es la lectura de estas definiciones y la creacin de un objeto a
partir de ella.
Herencia
Por ejemplo, herencia de la clase C a la clase D, es la facilidad mediante la cual la
clase D hereda en ella cada uno de los atributos y operaciones de C, como si esos
atributos y operaciones hubiesen sido definidos por la misma D. Por lo tanto,
puede usar los mismos mtodos y variables pblicas declaradas en C. Los
componentes registrados como "privados" (private) tambin se heredan, pero
como no pertenecen a la clase, se mantienen escondidos al programador y slo
pueden ser accedidos a travs de otros mtodos pblicos. En el caso de los
componentes registrados como "protegidos" (protected) tambin se heredan, pero
solo para esa clase, no para futuras clases heredadas. Esto es as para mantener
hegemnico el ideal de POO.
Objeto
Instancia de una clase. Entidad provista de un conjunto de propiedades o atributos
(datos) y de comportamiento o funcionalidad (mtodos), los mismos que
consecuentemente reaccionan a eventos. Se corresponden con los objetos reales
del mundo que nos rodea, o con objetos internos del sistema (del programa).
Mtodo
Algoritmo asociado a un objeto (o a una clase de objetos), cuya ejecucin se
desencadena tras la recepcin de un "mensaje". Desde el punto de vista del
comportamiento, es lo que el objeto puede hacer. Un mtodo puede producir un
cambio en las propiedades del objeto, o la generacin de un "evento" con un
nuevo mensaje para otro objeto del sistema.
Evento
Es un suceso en el sistema (tal como una interaccin del usuario con la mquina,
o un mensaje enviado por un objeto). El sistema maneja el evento enviando el

mensaje adecuado al objeto pertinente. Tambin se puede definir como evento la


reaccin que puede desencadenar un objeto; es decir, la accin que genera.
Atributos
Caractersticas que tiene la clase.
Mensaje
Una comunicacin dirigida a un objeto, que le ordena que ejecute uno de sus
mtodos con ciertos parmetros asociados al evento que lo gener.
Propiedad o atributo
Contenedor de un tipo de datos asociados a un objeto (o a una clase de objetos),
que hace los datos visibles desde fuera del objeto y esto se define como sus
caractersticas predeterminadas, y cuyo valor puede ser alterado por la ejecucin
de algn mtodo.
Estado interno
Es una variable que se declara privada, que puede ser nicamente accedida y
alterada por un mtodo del objeto, y que se utiliza para indicar distintas
situaciones posibles para el objeto (o clase de objetos). No es visible al
programador que maneja una instancia de la clase.
Componentes de un objeto
Atributos, identidad, relaciones y mtodos.
Identificacin de un objeto
Un objeto se representa por medio de una tabla o entidad que est compuesta por
sus atributos y funciones correspondientes.
En comparacin con un lenguaje imperativo, una "variable" no es ms que un
contenedor interno del atributo del objeto o de un estado interno, as como la
"funcin" es un procedimiento interno del mtodo del objeto.

1.
Programacin orientada objetos.

Es una metodologa que se basa en la estructura de los programas entorno a los


objetos, es un nuevo mtodo de descomposicin a objetos. Se basa en fijarnos no
en lo que hay que hacer en el problema, sino en cul es el escenario real del
mismo, y vamos a intentar simular ese escenario en nuestro programa. Los
lenguajes de POO ofrecen medios y herramientas para describir los objetos
manipulados por un programa. Ms que describir cada objeto individualmente,
estos lenguajes proveen una construccin (Clase) que describe a un conjunto de
objetos que poseen las mismas propiedades. La programacin orientada a
objetos es una nueva forma de pensar, una manera distinta de enfocar los
problemas. Ah radica la dificultad de aprender un lenguaje totalmente orientado a
objetos, como es Java, sin conocer previamente los pilares de la programacin
orientada a objetos. Hecha esta importante aclaracin, conviene destacar que
Java, ms que un lenguaje orientado a objetos, es un lenguaje de objetos. Java
incorpora el uso de la orientacin a objetos como uno de los pilares bsicos y
fundamentales del lenguaje.

Abstraccin: Cada objeto en el sistema sirve como modelo de un agente


abstracto que puede realizar trabajo, informar y cambiar su estado, y
comunicarse con otros objetos en el sistema sin revelar cmo se implementan
estas caractersticas. Los procesos, las funciones o los mtodos pueden tambin
ser abstrados y cuando lo estn, una variedad de tcnicas son requeridas para
ampliar una abstraccin.
Encapsulamiento: Significa reunir a todos los elementos que pueden
considerarse pertenecientes a una misma entidad, al mismo nivel de abstraccin.
Esto permite aumentar la cohesin de los componentes del sistema. Algunos
autores confunden este concepto con el principio de ocultacin, principalmente
porque se suelen emplear conjuntamente.

Principio de ocultacin: Cada objeto est aislado del exterior, es un mdulo


natural, y cada tipo de objeto expone una interfaz a otros objetos que especifica
cmo pueden interactuar con los objetos de la clase. El aislamiento protege a las
propiedades de un objeto contra su modificacin por quien no tenga derecho a
acceder a ellas, solamente los propios mtodos internos del objeto pueden
acceder a su estado. Esto asegura que otros objetos no pueden cambiar el estado
interno de un objeto de maneras inesperadas, eliminando efectos secundarios e
interacciones inesperadas. Algunos lenguajes relajan esto, permitiendo un acceso
directo a los datos internos del objeto de una manera controlada y limitando el

grado de abstraccin. La aplicacin entera se reduce a un agregado o


rompecabezas de objetos.

Polimorfismo: comportamientos diferentes, asociados a objetos distintos, pueden


compartir el mismo nombre, al llamarlos por ese nombre se utilizar el
comportamiento correspondiente al objeto que se est usando. O dicho de otro
modo, las referencias y las colecciones de objetos pueden contener objetos de
diferentes tipos, y la invocacin de un comportamiento en una referencia producir
el comportamiento correcto para el tipo real del objeto referenciado. Cuando esto
ocurre en tiempo de ejecucin, esta ltima caracterstica se llama asignacin
tarda o asignacin dinmica. Algunos lenguajes proporcionan medios ms
estticos (en tiempo de compilacin) de polimorfismo, tales como las plantillas y
la sobrecarga de operadores de C++.

Herencia: las clases no estn aisladas, sino que se relacionan entre s, formando
una jerarqua de clasificacin. Los objetos heredan las propiedades y el
comportamiento de todas las clases a las que pertenecen. La herencia organiza y
facilita el polimorfismo y el encapsulamiento permitiendo a los objetos ser
definidos y creados como tipos especializados de objetos preexistentes. Estos
pueden compartir (y extender) su comportamiento sin tener que volver a
implementarlo. Esto suele hacerse habitualmente agrupando los objetos en clases
y estas en rboles o enrejados que reflejan un comportamiento comn. Cuando un
objeto hereda de ms de una clase se dice que hay herencia mltiple.

2.
La Mquina Virtual Java (JVM) es el entorno en el que se ejecutan los programas
Java, su misin principal es la de garantizar la portabilidad de las aplicaciones
Java. Define esencialmente un ordenador abstracto y especifica las instrucciones
(bytecodes) que este ordenador puede ejecutar. El intrprete Java especfico
ejecuta las instrucciones que se guardan en los archivos cuya extensin es .class.
Las tareas principales de la JVM son reservar espacio en memoria para los
objetos creados, liberar la memoria no usada (garbage collection), asignar
variables a registros y pilas, llamar al sistema husped para ciertas funciones,
como los accesos a los dispositivos, vigilar el cumplimiento de las normas de
seguridad de las aplicaciones Java.
Esta ltima tarea, es una de las ms importantes que realiza la JVM. Adems, las
propias especificaciones del lenguaje Java contribuyen extraordinariamente a este
objetivo, las referencias a arrays son verificadas en el momento de la ejecucin del
programa, no hay manera de manipular de forma directa los punteros, la JVM
gestiona automticamente el uso de la memoria, de modo que no queden huecos.
No se permiten realizar ciertas conversiones (casting) entre distintos tipos de
datos.
Por ejemplo, cuando el navegador encuentra una pgina web con un applet, pone
en marcha la JVM y proporciona la informacin que aparece en la etiqueta
<APPLET > ... </APPLET>. El cargador de clases dentro de la JVM ve que clases
necesita el applet. Dentro del proceso de carga, las clases se examinan mediante
un verificador que asegura que las clases contienen cdigo vlido y no malicioso.
Finalmente, se ejecuta el applet.

3. En java sabemos que cuando declaramos una variable o un mtodo con un


nombre en especfico, no podemos declarar otra variable o mtodo que se llame
igual. Sin embargo esta regla no aplica cuando usamos la Sobrecarga de
mtodos, ya que esta permite usar el mismo nombre del mtodo pero solo si se
tiene diferente nombre cuando hablamos de la firma de un mtodo, nos referimos
a sus parmetros. Dicho antes se utiliza para reutilizar el nombre de un mtodo
pero con diferentes argumentos, adems tienen como ventaja que son tiles ya
que permiten la repeticin de nombres en varios mtodos sin que le genere error.
Aunque en otros lenguajes no se permiten esta caractersticas no quiere decir que
no sea beneficiosa ya que eso depende de la perspectiva programador, aunque
algunos se le hara ms fcil que se repitan los nombres en los mtodos, pero
tambin seria para otros ms complicado por tanta repitencia de nombre.

Вам также может понравиться