Recursión o iteración

Se han estudiado diferentes métodos que se pueden implementar fácilmente, bien de modo recursivo, o bien de modo iterativo. En esta sección se comparan los dos enfoques y se examinan las razones por las que el programador puede elegir un enfoque u otro según la situación específica.  Seguir leyendo

Ejercicios resueltos

Seguir leyendo

Recursividad

La recursividad es aquella propiedad que posee un método por la cual puede llamarse a si mismo. Aunque se puede utilizar la recursividad como una alternativa a la iteración, una solución recursiva es, normalmente, menos eficiente en términos de tiempo de computadora que una solución iterativa, debido a las operaciones auxiliares que llevan consigo las invocaciones suplementarias a los métodos.  Seguir leyendo

Prioridad entre hilos

Los sistemas operativos difieren en la forma de planificar la ejecución de los hilos. Windows gestiona el reparto de los tiempos de ejecución de los hilos (tareas) de forma directamente proporcional a la prioridad asignada a cada hilo.  Seguir leyendo

Estados de un hilo

Los hilos se crean como cualquier otro objeto de Java y duran hasta que finaliza el método run(). Todo hilo pasa por cuatro estados: creado, ejecutable, bloqueado, eliminado.  Seguir leyendo

Creación de hilos

Un programa puede necesitar realizar más de una tarea al mismo tiempo, de tal forma que el programa arranque distintos hilos (threads) de ejecución, realizando acciones diferentes. Los navegadores (Explorer, Firefox, Chrome, . . .) ejecutan múltiples hilos (procesos) para llevar a cabo su trabajo, es decir la descarga y visualización de una página web.  Seguir leyendo

Especificación de excepciones

La técnica de manejo de excepciones se basa, como se ha visto antes, en la captura de excepciones que ocurren al ejecutar las sentencias. (Ver Captura de una excepción)  Seguir leyendo

Nuevas clases de excepciones

Las clases de excepciones que define Java pueden ser ampliadas en las aplicaciones. Se pueden definir nuevas clases de excepciones para que así las aplicaciones tengan su específico control de errores. Las clases que se definan tienen que derivar de la clase base Exception, o bien directa o indirectamente.  Seguir leyendo

Clases de excepciones definidas en Java

El lenguaje Java pretende estandarizar el manejo de excepciones y por ello declara un amplio conjunto de clases de excepciones. Estas clases forman una jerarquía de clases, en la que la clase base es Throwable, que deriva directamente de la superclase base Object.  Seguir leyendo

Cláusula finally

En un bloque try se ejecutan sentencias de todo tipo, llamadas a métodos, creación de objetos. . .; en ciertas aplicaciones se pedirán recursos al sistema para ser utilizados. Las aplicaciones que procesan información abren ficheros para leerlos, ficheros que se asignarán con uso exclusivo.  Seguir leyendo