SlideShare ist ein Scribd-Unternehmen logo
1 von 7
Downloaden Sie, um offline zu lesen
CONCEPTOS FUNDAMENTALES DE
PROGRAMACIÓN ORIENTADA A OBEJTOS




                        Janner Obredor
Que es Java?

Lenguaje de programación orientado a objetos, desarrollado por Sun Microsystems, La
programación en Java es compilada en bytecode, el cuál es ejecutado por la máquina virtual Java
(JVM). El lenguaje es parecido a C y C++, aunque su modelo de objetos es más sencillo.

Fuente:
http://www.alegsa.com.ar/Dic/java.php
http://es.wikipedia.org


Sencillo

           Utiliza masivamente variables que contienen direcciones de la memoria (punteros), pero
           sin dejar la complicación al programador.
           La ausencia en Java de una aritmética para los punteros debe entenderse no como una
           rigidez sino como una protección contra errores difíciles de detectar.
           La gestión dinámica de la memoria la realiza el interprete de Java y evita esa complicación
           al programador.
           El colector de memoria del interprete de Java verifica continuamente qué objetos han
           dejado de referenciarse y los destruye automáticamente.
           La ralentización que implica esta automatización está compensada por la menor
           propensión a errores que ello supone.



Fuente:
http://www.dtic.upf.edu/~vlopez/docencia/castellano/todoshtml/PIt3cas/node15.html



Orientado a objetos:

           Fomenta la reutilización y extensión del código.
           Permite crear sistemas más complejos.
           Relacionar el sistema al mundo real.
           Facilita la creación de programas visuales.
           Construcción de prototipos
           Agiliza el desarrollo de software
           Facilita el trabajo en equipo
           Facilita el mantenimiento del software

Fuente: http://java.ciberaula.com/articulo/tecnologia_orientada_objetos/
Distribuido:

Java se ha construido con extensas capacidades de interconexión TCP/IP. Existen librerías de
rutinas para acceder e interactuar con protocolos como http y ftp. Esto permite a los
programadores acceder a la información a través de la red con tanta facilidad como a los ficheros
locales.

Fuente: http://www.monografias.com/trabajos/java/java.shtml


Interpretado

El intérprete Java (sistema run-time) puede ejecutar directamente el código objeto. Enlazar (linkar)
un programa, normalmente, consume menos recursos que compilarlo, por lo que los
desarrolladores con Java pasarán más tiempo desarrollando y menos esperando por el ordenador.
No obstante, el compilador actual del JDK es bastante lento. Por ahora, que todavía no hay
compiladores específicos de Java para las diversas plataformas, Java es más lento que otros
lenguajes de programación, como C++, ya que debe ser interpretado y no ejecutado como sucede
en cualquier programa tradicional.

En resumen, para conseguir que Java sea un lenguaje independiente del sistema operativo y del
procesador que incorpore la máquina utilizada, es tanto interpretado como compilado.

Fuente: http://www.monografias.com/trabajos/java/java.shtml


Robusto

Java realiza verificaciones en busca de problemas tanto en tiempo de compilación como en tiempo
de ejecución. La comprobación de tipos en Java ayuda a detectar errores, lo antes posible, en el
ciclo de desarrollo. Java obliga a la declaración explícita de métodos, reduciendo así las
posibilidades de error. Maneja la memoria para eliminar las preocupaciones por parte del
programador de la liberación o corrupción de memoria.

Fuente: http://www.monografias.com/trabajos/java/java.shtml




Seguro

La seguridad en Java tiene dos facetas. En el lenguaje, características como los punteros o el
casting implícito que hacen los compiladores de C y C++ se eliminan para prevenir el acceso ilegal a
la memoria. Cuando se usa Java para crear un navegador, se combinan las características del
lenguaje con protecciones de sentido común aplicadas al propio navegador.

Fuente: http://www.monografias.com/trabajos/java/java.shtml
Arquitectura neutral

Para establecer Java como parte integral de la red, el compilador Java compila su código a un
fichero objeto de formato independiente de la arquitectura de la máquina en que se ejecutará.
Cualquier máquina que tenga el sistema de ejecución (run-time) puede ejecutar ese código objeto,
sin importar en modo alguno la máquina en que ha sido generado. Actualmente existen sistemas
run-time para Solaris 2.x, SunOs 4.1.x, Windows 95, Windows NT, Linux, Irix, Aix, Mac, Apple y
probablemente haya grupos de desarrollo trabajando en el porting a otras plataformas.




El código fuente Java se "compila" a un código de bytes de alto nivel independiente de la máquina.
Este código (byte-codes) está diseñado para ejecutarse en una máquina hipotética que es
implementada por un sistema run-time, que sí es dependiente de la máquina.

Fuente: http://www.monografias.com/trabajos/java/java.shtml

Portable

Más allá de la portabilidad básica por ser de arquitectura independiente, Java implementa otros
estándares de portabilidad para facilitar el desarrollo. Los enteros son siempre enteros y además,
enteros de 32 bits en complemento a 2. Además, Java construye sus interfaces de usuario a través
de un sistema abstracto de ventanas de forma que las ventanas puedan ser implantadas en
entornos Unix, Pc o Mac.

Fuente: http://www.monografias.com/trabajos/java/java.shtml
Dinámico

Java se beneficia todo lo posible de la tecnología orientada a objetos. Java no intenta conectar
todos los módulos que comprenden una aplicación hasta el tiempo de ejecución. Las librería
nuevas o actualizadas no paralizarán las aplicaciones actuales (siempre que mantengan el API
anterior).




Java también simplifica el uso de protocolos nuevos o actualizados. Si su sistema ejecuta una
aplicación Java sobre la red y encuentra una pieza de la aplicación que no sabe manejar, tal como
se ha explicado en párrafos anteriores, Java es capaz de traer automáticamente cualquiera de esas
piezas que el sistema necesita para funcionar.

Fuente: http://www.monografias.com/trabajos/java/java.shtml




El bytecode

Es un código intermedio más abstracto que el código máquina. Habitualmente es tratado como un
fichero binario que contiene un programa ejecutable similar a un módulo objeto, que es un fichero
binario producido por el compilador cuyo contenido es el código objeto o código máquina .

Los programas en bytecode suelen ser interpretados por un intérprete de bytecode (en general
llamado máquina virtual, JVM dado que es análogo a un ordenador). Su ventaja es su portabilidad:
el mismo código binario puede ser ejecutado en diferentes plataformas y arquitecturas

Fuente: http://es.wikipedia.org/wiki/Bytecode
JDK

El entorno básico del JDK de Java que proporciona Sun está formado por herramientas en modo
texto, que son: java, intérprete que ejecuta programas en byte-code. javac, compilador de Java
que convierte el código fuente en byte-code. javah, crea ficheros de cabecera para implementar
métodos para cualquier clase. javap, es un descompilador de byte-code a código fuente Java.
javadoc, es un generador automático de documentos HTML a partir del código fuente Java.
javaprof, es un profiler para aplicaciones de un solo thread. HotJava, es un navegador Web escrito
completamente en Java.

Fuente: http://www.monografias.com/trabajos/java/java.shtml




Programación Orientada a Objetos (POO)

Para mi la POO no es un lenguaje de programación, es una forma de enfrentarse a ella. Esto
significa que la POO servirá para desarrollar en muchos de los lenguajes comunes de hoy en día
manteniendo un mismo esquema mental.

3 Propiedades de la POO

Encapsulamiento: Significa reunir a todos los elementos que pueden considerarse pertenecientes
a una misma entidad, al mismo nivel de abstracción. Esto permite aumentar la cohesión de los
componentes del sistema. Algunos autores confunden este concepto con el principio de
ocultación, principalmente porque se suelen emplear conjuntamente.

Herencia: las clases no están aisladas, sino que se relacionan entre sí, formando una jerarquía de
clasificación. 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 común. Cuando un objeto hereda de más de una clase se dice que
hay herencia múltiple.

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 invocación de un comportamiento en una
referencia producirá el comportamiento correcto para el tipo real del objeto referenciado. Cuando
esto ocurre en "tiempo de ejecución", esta última característica se llama asignación tardía o
asignación dinámica. Algunos lenguajes proporcionan medios más estáticos (en "tiempo de
compilación") de polimorfismo, tales como las plantillas y la sobrecarga de operadores de C++.

Fuente: http://es.wikipedia.org/wiki/programaci%c3%b3n_orientada_a_objetos
Diferencia entre una Aplicación y Applets

La diferencia entre una aplicación JAVA y un applet radica en cómo se ejecutan. Para cargar una
aplicación JAVA se utiliza el intérprete de JAVA (pcGRASP de Auburn University, Visual J++ de
Microsoft, Forte de Sun de Visual Café). En cambio, un applet se puede cargar y ejecutar desde
cualquier explorador que soporte JAVA (Netscape, Mozilla Firefox, Google Chrome...).

Fuente: http://es.wikipedia.org/wiki/Applet




Estructura básica java

Weitere ähnliche Inhalte

Was ist angesagt?

Desarrollo.de.aplicaciones.con.java
Desarrollo.de.aplicaciones.con.javaDesarrollo.de.aplicaciones.con.java
Desarrollo.de.aplicaciones.con.javaSantiago Sora
 
Curso de java_basico
Curso de java_basicoCurso de java_basico
Curso de java_basicoSaviotec
 
Compiladores (python)
Compiladores (python)Compiladores (python)
Compiladores (python)Sertepeca
 
Fundamentos u3 v1
Fundamentos u3 v1Fundamentos u3 v1
Fundamentos u3 v1Lubas Pc
 
java,conceptos basicos
java,conceptos basicosjava,conceptos basicos
java,conceptos basicosMariano Galvez
 
Introducción a java
Introducción a javaIntroducción a java
Introducción a javawaldinelly
 
Curso Java Avanzado 0 Conceptos Basicos
Curso Java Avanzado   0 Conceptos BasicosCurso Java Avanzado   0 Conceptos Basicos
Curso Java Avanzado 0 Conceptos BasicosEmilio Aviles Avila
 
Aplicaciones java. Presentacion Power Point
Aplicaciones java. Presentacion Power PointAplicaciones java. Presentacion Power Point
Aplicaciones java. Presentacion Power PointMariviMartinezM
 
Programación en Java (I)
Programación en Java (I) Programación en Java (I)
Programación en Java (I) Cristian
 
Aprendiendo Java SCF
Aprendiendo Java SCFAprendiendo Java SCF
Aprendiendo Java SCFmikaelsorai
 
Carasteristicas de compiladores sheshar
Carasteristicas de compiladores shesharCarasteristicas de compiladores sheshar
Carasteristicas de compiladores shesharudalrico
 

Was ist angesagt? (18)

C1 java introduccion
C1 java introduccionC1 java introduccion
C1 java introduccion
 
Tecnologia Java
Tecnologia JavaTecnologia Java
Tecnologia Java
 
Desarrollo.de.aplicaciones.con.java
Desarrollo.de.aplicaciones.con.javaDesarrollo.de.aplicaciones.con.java
Desarrollo.de.aplicaciones.con.java
 
Curso de java_basico
Curso de java_basicoCurso de java_basico
Curso de java_basico
 
Compiladores (python)
Compiladores (python)Compiladores (python)
Compiladores (python)
 
Fundamentos u3 v1
Fundamentos u3 v1Fundamentos u3 v1
Fundamentos u3 v1
 
java,conceptos basicos
java,conceptos basicosjava,conceptos basicos
java,conceptos basicos
 
Semana9 Vbr
Semana9 VbrSemana9 Vbr
Semana9 Vbr
 
Introducción a java
Introducción a javaIntroducción a java
Introducción a java
 
Curso Java Inacap
Curso Java InacapCurso Java Inacap
Curso Java Inacap
 
Unidad 2. Lenguaje orientado a objetos
Unidad 2. Lenguaje orientado a objetosUnidad 2. Lenguaje orientado a objetos
Unidad 2. Lenguaje orientado a objetos
 
Curso Java Avanzado 0 Conceptos Basicos
Curso Java Avanzado   0 Conceptos BasicosCurso Java Avanzado   0 Conceptos Basicos
Curso Java Avanzado 0 Conceptos Basicos
 
Aplicaciones java. Presentacion Power Point
Aplicaciones java. Presentacion Power PointAplicaciones java. Presentacion Power Point
Aplicaciones java. Presentacion Power Point
 
Programación en Java (I)
Programación en Java (I) Programación en Java (I)
Programación en Java (I)
 
Lenguaje java
Lenguaje javaLenguaje java
Lenguaje java
 
Lenguaje Java
Lenguaje JavaLenguaje Java
Lenguaje Java
 
Aprendiendo Java SCF
Aprendiendo Java SCFAprendiendo Java SCF
Aprendiendo Java SCF
 
Carasteristicas de compiladores sheshar
Carasteristicas de compiladores shesharCarasteristicas de compiladores sheshar
Carasteristicas de compiladores sheshar
 

Ähnlich wie Conceptos fundamentales de Java

Ähnlich wie Conceptos fundamentales de Java (20)

Lenguaje Java
Lenguaje JavaLenguaje Java
Lenguaje Java
 
Introduccion a Java
Introduccion a JavaIntroduccion a Java
Introduccion a Java
 
Java basico
Java basicoJava basico
Java basico
 
Curso de java_basico
Curso de java_basicoCurso de java_basico
Curso de java_basico
 
Introducción a la progrogramación orientada a objetos - Java
Introducción a la progrogramación orientada a objetos - JavaIntroducción a la progrogramación orientada a objetos - Java
Introducción a la progrogramación orientada a objetos - Java
 
Java basico
Java basicoJava basico
Java basico
 
C1 intro java
C1 intro javaC1 intro java
C1 intro java
 
Lenguaje de programacion java
Lenguaje de programacion javaLenguaje de programacion java
Lenguaje de programacion java
 
Java jaucito
Java jaucitoJava jaucito
Java jaucito
 
[ES] Primeros pasos con la Plataforma Java
[ES] Primeros pasos con la Plataforma Java[ES] Primeros pasos con la Plataforma Java
[ES] Primeros pasos con la Plataforma Java
 
POOI- Unidad 1.pdf
POOI- Unidad 1.pdfPOOI- Unidad 1.pdf
POOI- Unidad 1.pdf
 
Qué es java
Qué es javaQué es java
Qué es java
 
Fondo1 (2)
Fondo1 (2)Fondo1 (2)
Fondo1 (2)
 
Mi lenguaje de programación de preferencia
Mi lenguaje de programación de preferenciaMi lenguaje de programación de preferencia
Mi lenguaje de programación de preferencia
 
CUESTIONARIO JAVA
CUESTIONARIO JAVACUESTIONARIO JAVA
CUESTIONARIO JAVA
 
Introduccion Java
Introduccion JavaIntroduccion Java
Introduccion Java
 
Guia 1 java
Guia 1 javaGuia 1 java
Guia 1 java
 
Ut
UtUt
Ut
 
Java basico 2
Java basico 2Java basico 2
Java basico 2
 
Java basico 2
Java basico 2Java basico 2
Java basico 2
 

Mehr von sena

SOLVE
SOLVESOLVE
SOLVEsena
 
Marco Legal
Marco LegalMarco Legal
Marco Legalsena
 
CONTRATOS INFORMATICOS VS. CONTRATOS ELECTRONICOS
CONTRATOS INFORMATICOS VS. CONTRATOS ELECTRONICOSCONTRATOS INFORMATICOS VS. CONTRATOS ELECTRONICOS
CONTRATOS INFORMATICOS VS. CONTRATOS ELECTRONICOSsena
 
CONTRATOS INFORMATICOS VS. CONTRATOS ELECTRONICOS
CONTRATOS INFORMATICOS VS. CONTRATOS ELECTRONICOSCONTRATOS INFORMATICOS VS. CONTRATOS ELECTRONICOS
CONTRATOS INFORMATICOS VS. CONTRATOS ELECTRONICOSsena
 
Leyes Juridicas Para Negocios En La Web
Leyes Juridicas Para Negocios En La WebLeyes Juridicas Para Negocios En La Web
Leyes Juridicas Para Negocios En La Websena
 
Java janner
Java   jannerJava   janner
Java jannersena
 
Diapositivas de las tics
Diapositivas de las ticsDiapositivas de las tics
Diapositivas de las ticssena
 
Folleto
FolletoFolleto
Folletosena
 
Folleto
FolletoFolleto
Folletosena
 
Calidad
CalidadCalidad
Calidadsena
 
TEMAS - KEVIN CERA
TEMAS - KEVIN CERATEMAS - KEVIN CERA
TEMAS - KEVIN CERAsena
 
Manual de usuario sisbad
Manual de usuario   sisbadManual de usuario   sisbad
Manual de usuario sisbadsena
 
Manual de usuario - sisbad
Manual de usuario  -  sisbadManual de usuario  -  sisbad
Manual de usuario - sisbadsena
 
Manuales proyecto easy enter
Manuales proyecto easy enterManuales proyecto easy enter
Manuales proyecto easy entersena
 
Manuales proyecto easy enter
Manuales proyecto easy enterManuales proyecto easy enter
Manuales proyecto easy entersena
 
Manuales proyecto easy enter
Manuales proyecto easy enterManuales proyecto easy enter
Manuales proyecto easy entersena
 
Easy Help
Easy HelpEasy Help
Easy Helpsena
 

Mehr von sena (17)

SOLVE
SOLVESOLVE
SOLVE
 
Marco Legal
Marco LegalMarco Legal
Marco Legal
 
CONTRATOS INFORMATICOS VS. CONTRATOS ELECTRONICOS
CONTRATOS INFORMATICOS VS. CONTRATOS ELECTRONICOSCONTRATOS INFORMATICOS VS. CONTRATOS ELECTRONICOS
CONTRATOS INFORMATICOS VS. CONTRATOS ELECTRONICOS
 
CONTRATOS INFORMATICOS VS. CONTRATOS ELECTRONICOS
CONTRATOS INFORMATICOS VS. CONTRATOS ELECTRONICOSCONTRATOS INFORMATICOS VS. CONTRATOS ELECTRONICOS
CONTRATOS INFORMATICOS VS. CONTRATOS ELECTRONICOS
 
Leyes Juridicas Para Negocios En La Web
Leyes Juridicas Para Negocios En La WebLeyes Juridicas Para Negocios En La Web
Leyes Juridicas Para Negocios En La Web
 
Java janner
Java   jannerJava   janner
Java janner
 
Diapositivas de las tics
Diapositivas de las ticsDiapositivas de las tics
Diapositivas de las tics
 
Folleto
FolletoFolleto
Folleto
 
Folleto
FolletoFolleto
Folleto
 
Calidad
CalidadCalidad
Calidad
 
TEMAS - KEVIN CERA
TEMAS - KEVIN CERATEMAS - KEVIN CERA
TEMAS - KEVIN CERA
 
Manual de usuario sisbad
Manual de usuario   sisbadManual de usuario   sisbad
Manual de usuario sisbad
 
Manual de usuario - sisbad
Manual de usuario  -  sisbadManual de usuario  -  sisbad
Manual de usuario - sisbad
 
Manuales proyecto easy enter
Manuales proyecto easy enterManuales proyecto easy enter
Manuales proyecto easy enter
 
Manuales proyecto easy enter
Manuales proyecto easy enterManuales proyecto easy enter
Manuales proyecto easy enter
 
Manuales proyecto easy enter
Manuales proyecto easy enterManuales proyecto easy enter
Manuales proyecto easy enter
 
Easy Help
Easy HelpEasy Help
Easy Help
 

Conceptos fundamentales de Java

  • 1. CONCEPTOS FUNDAMENTALES DE PROGRAMACIÓN ORIENTADA A OBEJTOS Janner Obredor
  • 2. Que es Java? Lenguaje de programación orientado a objetos, desarrollado por Sun Microsystems, La programación en Java es compilada en bytecode, el cuál es ejecutado por la máquina virtual Java (JVM). El lenguaje es parecido a C y C++, aunque su modelo de objetos es más sencillo. Fuente: http://www.alegsa.com.ar/Dic/java.php http://es.wikipedia.org Sencillo Utiliza masivamente variables que contienen direcciones de la memoria (punteros), pero sin dejar la complicación al programador. La ausencia en Java de una aritmética para los punteros debe entenderse no como una rigidez sino como una protección contra errores difíciles de detectar. La gestión dinámica de la memoria la realiza el interprete de Java y evita esa complicación al programador. El colector de memoria del interprete de Java verifica continuamente qué objetos han dejado de referenciarse y los destruye automáticamente. La ralentización que implica esta automatización está compensada por la menor propensión a errores que ello supone. Fuente: http://www.dtic.upf.edu/~vlopez/docencia/castellano/todoshtml/PIt3cas/node15.html Orientado a objetos: Fomenta la reutilización y extensión del código. Permite crear sistemas más complejos. Relacionar el sistema al mundo real. Facilita la creación de programas visuales. Construcción de prototipos Agiliza el desarrollo de software Facilita el trabajo en equipo Facilita el mantenimiento del software Fuente: http://java.ciberaula.com/articulo/tecnologia_orientada_objetos/
  • 3. Distribuido: Java se ha construido con extensas capacidades de interconexión TCP/IP. Existen librerías de rutinas para acceder e interactuar con protocolos como http y ftp. Esto permite a los programadores acceder a la información a través de la red con tanta facilidad como a los ficheros locales. Fuente: http://www.monografias.com/trabajos/java/java.shtml Interpretado El intérprete Java (sistema run-time) puede ejecutar directamente el código objeto. Enlazar (linkar) un programa, normalmente, consume menos recursos que compilarlo, por lo que los desarrolladores con Java pasarán más tiempo desarrollando y menos esperando por el ordenador. No obstante, el compilador actual del JDK es bastante lento. Por ahora, que todavía no hay compiladores específicos de Java para las diversas plataformas, Java es más lento que otros lenguajes de programación, como C++, ya que debe ser interpretado y no ejecutado como sucede en cualquier programa tradicional. En resumen, para conseguir que Java sea un lenguaje independiente del sistema operativo y del procesador que incorpore la máquina utilizada, es tanto interpretado como compilado. Fuente: http://www.monografias.com/trabajos/java/java.shtml Robusto Java realiza verificaciones en busca de problemas tanto en tiempo de compilación como en tiempo de ejecución. La comprobación de tipos en Java ayuda a detectar errores, lo antes posible, en el ciclo de desarrollo. Java obliga a la declaración explícita de métodos, reduciendo así las posibilidades de error. Maneja la memoria para eliminar las preocupaciones por parte del programador de la liberación o corrupción de memoria. Fuente: http://www.monografias.com/trabajos/java/java.shtml Seguro La seguridad en Java tiene dos facetas. En el lenguaje, características como los punteros o el casting implícito que hacen los compiladores de C y C++ se eliminan para prevenir el acceso ilegal a la memoria. Cuando se usa Java para crear un navegador, se combinan las características del lenguaje con protecciones de sentido común aplicadas al propio navegador. Fuente: http://www.monografias.com/trabajos/java/java.shtml
  • 4. Arquitectura neutral Para establecer Java como parte integral de la red, el compilador Java compila su código a un fichero objeto de formato independiente de la arquitectura de la máquina en que se ejecutará. Cualquier máquina que tenga el sistema de ejecución (run-time) puede ejecutar ese código objeto, sin importar en modo alguno la máquina en que ha sido generado. Actualmente existen sistemas run-time para Solaris 2.x, SunOs 4.1.x, Windows 95, Windows NT, Linux, Irix, Aix, Mac, Apple y probablemente haya grupos de desarrollo trabajando en el porting a otras plataformas. El código fuente Java se "compila" a un código de bytes de alto nivel independiente de la máquina. Este código (byte-codes) está diseñado para ejecutarse en una máquina hipotética que es implementada por un sistema run-time, que sí es dependiente de la máquina. Fuente: http://www.monografias.com/trabajos/java/java.shtml Portable Más allá de la portabilidad básica por ser de arquitectura independiente, Java implementa otros estándares de portabilidad para facilitar el desarrollo. Los enteros son siempre enteros y además, enteros de 32 bits en complemento a 2. Además, Java construye sus interfaces de usuario a través de un sistema abstracto de ventanas de forma que las ventanas puedan ser implantadas en entornos Unix, Pc o Mac. Fuente: http://www.monografias.com/trabajos/java/java.shtml
  • 5. Dinámico Java se beneficia todo lo posible de la tecnología orientada a objetos. Java no intenta conectar todos los módulos que comprenden una aplicación hasta el tiempo de ejecución. Las librería nuevas o actualizadas no paralizarán las aplicaciones actuales (siempre que mantengan el API anterior). Java también simplifica el uso de protocolos nuevos o actualizados. Si su sistema ejecuta una aplicación Java sobre la red y encuentra una pieza de la aplicación que no sabe manejar, tal como se ha explicado en párrafos anteriores, Java es capaz de traer automáticamente cualquiera de esas piezas que el sistema necesita para funcionar. Fuente: http://www.monografias.com/trabajos/java/java.shtml El bytecode Es un código intermedio más abstracto que el código máquina. Habitualmente es tratado como un fichero binario que contiene un programa ejecutable similar a un módulo objeto, que es un fichero binario producido por el compilador cuyo contenido es el código objeto o código máquina . Los programas en bytecode suelen ser interpretados por un intérprete de bytecode (en general llamado máquina virtual, JVM dado que es análogo a un ordenador). Su ventaja es su portabilidad: el mismo código binario puede ser ejecutado en diferentes plataformas y arquitecturas Fuente: http://es.wikipedia.org/wiki/Bytecode
  • 6. JDK El entorno básico del JDK de Java que proporciona Sun está formado por herramientas en modo texto, que son: java, intérprete que ejecuta programas en byte-code. javac, compilador de Java que convierte el código fuente en byte-code. javah, crea ficheros de cabecera para implementar métodos para cualquier clase. javap, es un descompilador de byte-code a código fuente Java. javadoc, es un generador automático de documentos HTML a partir del código fuente Java. javaprof, es un profiler para aplicaciones de un solo thread. HotJava, es un navegador Web escrito completamente en Java. Fuente: http://www.monografias.com/trabajos/java/java.shtml Programación Orientada a Objetos (POO) Para mi la POO no es un lenguaje de programación, es una forma de enfrentarse a ella. Esto significa que la POO servirá para desarrollar en muchos de los lenguajes comunes de hoy en día manteniendo un mismo esquema mental. 3 Propiedades de la POO Encapsulamiento: Significa reunir a todos los elementos que pueden considerarse pertenecientes a una misma entidad, al mismo nivel de abstracción. Esto permite aumentar la cohesión de los componentes del sistema. Algunos autores confunden este concepto con el principio de ocultación, principalmente porque se suelen emplear conjuntamente. Herencia: las clases no están aisladas, sino que se relacionan entre sí, formando una jerarquía de clasificación. 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 común. Cuando un objeto hereda de más de una clase se dice que hay herencia múltiple. 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 invocación de un comportamiento en una referencia producirá el comportamiento correcto para el tipo real del objeto referenciado. Cuando esto ocurre en "tiempo de ejecución", esta última característica se llama asignación tardía o asignación dinámica. Algunos lenguajes proporcionan medios más estáticos (en "tiempo de compilación") de polimorfismo, tales como las plantillas y la sobrecarga de operadores de C++. Fuente: http://es.wikipedia.org/wiki/programaci%c3%b3n_orientada_a_objetos
  • 7. Diferencia entre una Aplicación y Applets La diferencia entre una aplicación JAVA y un applet radica en cómo se ejecutan. Para cargar una aplicación JAVA se utiliza el intérprete de JAVA (pcGRASP de Auburn University, Visual J++ de Microsoft, Forte de Sun de Visual Café). En cambio, un applet se puede cargar y ejecutar desde cualquier explorador que soporte JAVA (Netscape, Mozilla Firefox, Google Chrome...). Fuente: http://es.wikipedia.org/wiki/Applet Estructura básica java