B3T6 JAVA Flashcards
Si yo tengo un objeto de la clase Factura, la expresión (obj instanceof Factura) dará true, ¿y la expresión (obj instanceof Serializable) ?
Dará true si la clase Factura implementa el interface Serializable o cualquier de sus padres
¿Se puede modificar un objeto de la clase String por ej. para transformarlo a mayusculas?
No, la clase String es inmutable. Para eso tenemos StringBuffer y StringBuilder
¿Qué significa en java la siguiente declaración?
public @interface Seguridad
Una anotación (a partir de la JDK1.5)
¿De qué dos formas se puede crear hilos en Java?
- Heredando de la clase Thread
- Implementando el interface Runnable
Ambos sobreescriben el método run @override
¿Como se declara una constante en Java?
static final
En java, el tipo int por ej. se convierte a su correspondiente clase wrapper Integer. ¿Cómo se denomina a esta característica?
Autoboxing
Lo contrario es unboxing
¿Qué uso tiene clase java.lang.Object?
Es la clase de la que hereda cualquier clase en Java (del sistema o las nuestras). De esta forma cualquier objeto en Java tendrá siempre una serie de metodos importantes como
toString()
equals()
hashCode()
wait()
notify()
finalize()
¿Cómo podríamos averiguar si un objeto pertenece a una clase que implementa el interface Pagable?
Existen dos metodos
API Reflexion –> obj.getClass().getInterfaces() –> … (procesar con un bucle e ir comprobando)
Con un operador especial Ej: if (objeto instanceof Pagable)
¿Qué contiene la JDK?
Contiene las herramientas para los desarrolladores + JRE((clases bases rt.jar o module java.base) + JVM)
Nombra tres JDK´s disponibles
- OpenJDK [IR -> Implementación de referencia desde la versión 7]
- Amazon Corretto
- IBM JDK
La Java Virtual Machine Specifications tiene todo lo necesario para que cualquiera pueda crear su propia JVM
Nombra 3 IDEs para JAVA
- IntelliJ
- Netbeans
- Eclipse
¿Para que sirve JIT?
JIT = Just In Time
Sirve para compilar de bytecode a código máquina en tiempo de ejecución
De que dos formas podemos controlar errores en JAVA
- Checked : Extend Exception –> Plagan de try catch + trows el código.
- Unchecked: Implements RuntimeException –> Mas limpio el código
Nombra implementaciones de registro de logs en JAVA
. Log4J
- Logback
- TinyLog
- Apache Commons Logging
SLF4J es la fachada
¿Cómo podemos conseguir que un método solo permita un hilo de ejecución de forma simultánea?
Con la palabra reservada synchronized
-> Los objetos al heredar de Object tienen las funciones wait() y notify(), para los hilos que queden en cola
Nombra tres productos que implementan la api JPA
- Hibernate
- TopLink
- OpenJPA
¿Para qué sirve Maven y cual es el fichero principal?
Maven es una herramienta de automatizacion. Se basa en repositorios, dependencias y archetypes(plantillas de proyectos)
El fichero principal es POM.xml-> Cada dependencia tiene su propio group_id, artifact_id y version.
Guarda info de configuración en la carpeta .m2
¿Con que clase podemos hacer programación asíncrona en JAVA?
Clase CompletableFuture. Está en java.util.concurrent
¿Cómo se crea un objeto funcion?
Con @FunctionalInterface
¿Para que sirven los try-catch-with-resources?
Para liberar recursos de forma automática. Siempre que se implementen la interfaz Autocloseable
Nombra clases relacionadas con la interfaz autocloseable
-> La mayoría de las clases relacionadas con entrada/salida de datos
->Clases relacionadas con sist3emas de ficheros y flujos de red
->Conexión a bbdd mediante JDBC
¿Cuál es la última versión de JAVA disponible?
JAVA 20
¿Para que sirve javac, java, javadoc, jar y javap?
javac -> Compilador (pasa a bytecode)
java -> Intérprete
Javadoc -> genera documentación en html. Los comentarios tienen que ir /** sdfasdf @author nombre */
jar-> Empaquetar clases compiladas
javap -> Desesamblador de .class a .java
¿Qué tres métodos existen para cargar librerias de clase?
- Variable de entorno CLASSPATH
- Property cuando llamamos al intérprete: java -classpath ruta_a.jar
- En el fichero manifest-> class-path
Las apps con método main son monohilo?
Si.
Que es la sobrecarga?
Varios métodos con misma nomenclatura que recibe parámetros diferentes