Java Flashcards
Herramientas del JDK (conjunto de utilidades)
- javac: compilador
- java: lanzador (el que arranca el intérprete)
- javadoc: herramienta para generar ficheros .html a partir de .java + “comentarios especiales”
- jar: empaquetar clases compiladas
- keytool: criptografía
- wsimport: generación de clases automáticas para los clientes de web service de tipo SOAP (para hacer o consumir webservice)
- xjc: compilador que genera clases a partir de un XSD
- javap: desensamblador de ficheros .class
- jdb: depurador
- jmc y jconsole: herramientas de monitorización de la JVM
¿Como se ponen comentarios para documentar? (Javadoc)
Con /**
(Con /* sólo es para comentar en java)
Metadatos de Javadoc
- @throws
- @param
- @since
- @author
En qué consiste el JIT (just-in-time) compiler
Es una técnica de compilación en tiempo de ejecución, que mejora el rendimiento de sistemas de programación que compilan a bytecode, consistente en traducir bytecode a código nativo.
Definición corta: pieza que traduce de bytecode a código nativo
¿Qué se almacena en la Pila (Java Stack) de la máquina virtual Java?
- Las variables locales
- Los parámetros de entrada (antes de llamar a la función)
- La dirección de retorno de la función a la que vamos a llamar (*)
(Stack como estructura de datos)
¿Qué es el Heap dentro de la máquina virtual Java?
Zona de la memoria donde se almacenan los objetos que se crean dinámicamente
Sintaxis de llamada a métodos sobre un objeto
objeto.metodo(parámetro);
¿Cuál es la variable de entorno que le sirve a la maquina virtual para localizar y cargar clases que se usen en tu programa y que no sean las tuyas ni las del fichero rt.jar?
CLASSPATH
Se puede indicar:
- como property que se establece cuando se lanza el programa:
Java -classpath /…/…/lib.jar
- en el fichero Manifest.mf existe un “campo” llamado Class-Path:ruta(s) (dentro de un fichero .jar)
De qué está formado el JRE
JRE=interprete(maquina virtual Java) + librerías de clases BASE (rt.jar)
¿Donde está el fichero Manifest.mf?
Dentro del .jar, en un directorio llamado /META-INF/Manifest.mf, además de las clases que pueda haber
¿Cual es el equivalente a los procesos de Linux dentro de la maquina virtual de java?
THREADS o Hilos de ejecución.
- Existen predefinidos pero también podríamos crear nuestros propios Threads
¿Cuál es un ejemplo importante de Threads predefinidos?
El Recolector de Basura (GC) que borra objetos de no referenciado automáticamente
Cuales son los tipos de datos primitivos de JAVA
Byte, short, int, long, float, double, boolean, char
Cuales son los tipos de datos objeto de JAVA
Son referencias o punteros. Variables que apuntan a zonas de memoria.
En qué consiste la sobrecarga
La capacidad que te dan los lenguajes de programación de, para una misma función y en una misma clase, proporcionarle nuevas versiones.
(Se distingue por el número y tipo de parámetro de entrada)