Conjunto de herramientas y librerías necesarias para ejecutar programas escritos en Java, pero no para desarrollarlos.
Java Runtime Environment (Entorno de Ejecución de Java)
Arquitectura de JRE (Java Runtime Environment)
De que se compone?
Que es un objeto en Java y que contiene
En Java, un objeto es una instancia de una clase, es decir, algo creado a partir de un molde (la clase) y que contiene:
Una clase es el molde.
Un objeto es el producto del molde.
Clase: Coche (describe cómo puede ser un coche)
Objeto: un coche específico (con color, marca, etc.)
Que es un JIT compiler (Just-In-Time Compiler)
Es una parte de la JVM (Java Virtual Machine) que convierte el bytecode de Java en código máquina nativo justo en el momento en que se va a ejecutar
Cuáles son los comentarios de Java.doc (documento) y sus tags (etiquetas)
Serían los que empiezan por /**
@param: parámetro de un método o constructo
@throws/@exception: Indica qué excepción puede lanzar un método
@since: Indica desde qué versión del código o librería existe el elemento documentado.
@autor: Indica el autor del código o clase.
Nombra los 7 tipos de ficheros en Java y sus ejemplos
Ejecución (JRE Java runtime enviroment) Como esta compuesto?
Interprete (máquina virtual java) + librerías de clases BASE (rt.jar) (Típica librería de clases que viene predefinida)
Para que sirve la variable de entorno llamada CLASSPATH
Sirve a la máquina virtual para localizar y cargar clases
Nombra el hilo predefinido que hemos visto en clase
GC (recolector de basura): liberar automáticamente la memoria ocupada por objetos que ya no se están usando
Java es un lenguaje orientado a objetos, cuales son los conceptos mas importantes
Clase
Objeto/encapsulación
Herencia: Un mecanismo de extensión, de especialización. No todas las clases son distintas, se pueden parecer a nivel conceptual, pero tiene un comportamiento un poco diferente
Sobrecarga (overloading): es una característica que permite tener varios métodos con el mismo nombre, siempre que cambien sus parámetros
Polimorfismo: es uno de los pilares de la programación orientada a objetos.
Significa, literalmente, “muchas formas”: que un mismo objeto o método puede comportarse de distintas maneras según el contexto.
Interface: es una lista de métodos (y constantes) que una clase debe cumplir. No describe cómo se hacen las cosas, solo qué se debe poder hacer.
En cuanto a los tipos de datos en Java, los objetos que tipos tiene
Nombra 8 tipos de datos primitivos
Al sobreuso de atributos (datos) en una clase se le llama…
Anemic domain model (Martin Fowler)
Cual es la diferencia entre una clase y un interface
El interface no tiene código
En Java, extends e implements se usan para herencia y para interfaces, pero NO significan lo mismo, cuando se usa cada una?
Extends:
Implements:
Que es Abstract y para que se usa
En Java, abstract es una palabra clave que se usa para crear clases abstractas y métodos abstractos.
Sirve para definir conceptos incompletos que deben ser completados por las subclases.
Cuando ponemos la palabra reservada final, que impide
La palabra reservada “final” impide la sobreescritura y los hijos en un método
Para que se utiliza la palabra reservada native
La palabra reservada native se usa para indicar que un método está escrito en un lenguaje no Java, normalmente C o C++, y que pertenece a código nativo del sistema operativo.
Es decir, se declara en Java, pero su implementación real NO está en Java, sino en una librería externa
Para que se utiliza la palabra reservada static
Indica que algo pertenece a la clase, no a los objetos.
Es decir, un miembro static existe aunque no se cree ningún objeto, y es compartido por todas las instancias.
👉 static = algo global dentro de la clase
Cuando declaras algo como static:
Para que se usa la palabra reservada transient
Se usa para indicar que un atributo NO debe ser serializado (La serialización es el proceso de convertir un objeto en una secuencia de bytes para Guardarlo en un fichero, Enviarlo por red, Mantener su estado. Cuando el objeto se “reconstruye”, se hace mediante deserialización.)
Es decir, cuando un objeto se guarda en un archivo, se envía por red o se convierte en bytes, los campos marcados como transient no se guardan.
Para que se utiliza la palabra reservada “synchronized”
La palabra reservada synchronized en Java se usa para controlar el acceso concurrente a un método o a un bloque de código.
Sirve para evitar que dos o más hilos (threads) accedan al mismo recurso al mismo tiempo, lo cual puede generar errores, inconsistencias o corrupción de datos.
Que son los modificadores de acceso y cuales son los 4 principales
7 Elementos de programación Java basicos