El contenido es una adaptación de la obra Programación Orientada a
Objetos con Java que aparece en la bibliografía del curso. A tal fin
dentro de la documentación de cada capítulo se han descrito los
diferentes elementos básicos de la programación con Java acompañados de
ejemplos sencillos de utilización.
Prácticamente todos los programas de ejemplo son deliberadamente
pequeños y sencillos para ilustrar cada concepto explicado. Es
preferible usar un programa aunque sea pequeño que uno largo. A pesar
de la simpleza, todos los programas ejemplo pueden compilarse y
ejecutarse de forma independiente. Esto evita las preguntas que
frecuentemente generan los fragmentos de programas incompletos.
Asímismo, junto con la descripción de los diferentes elementos de
programación en Java, se han incluido las correspondientes convenciones
estándar de codificación seguidas por Sun y recomendadas para otros
programadores (http://java.sun.com/docs/codeconv/index.html
Revisado y actualizado el 20 de abril de 1999). Estas convenciones
abarcan los identificadores de archivos de la aplicación, la
organización de dichos archivos, la indentación, los comentarios, las
declaraciones, las sentencias, los espacios en blanco, las convenciones
para identificadores en general y otras prácticas de programación.
- LO-F-001. Tema 1: Introducción
(PDF).
Este capítulo pretende ser una rápida introducción a la
programación en Java. En primer lugar muestra lo que es Java, sus
características y las herramientas que están ligadas a él y, a
continuación, enseña cómo compilar y ejecutar algunos programas
sencillos escritos en Java.
- LO-F-002. Tema 2: Estructura de un
programa en Java (PDF)
Este capítulo tiene como objetivo presentar la estructura de un
programa mediante un ejemplo sencillo y mostrar dos elementos típicos
del código fuente: los comentarios y los identificadores.
- LO-F-003. Tema 3: Tipos primitivos de
dato (PDF)
Todo lenguaje de programación consta de elementos específicos que
permiten realizar las operaciones básicas de la programación: tipos de
datos, operadores e instrucciones o sentencias. En este apartado se
introducen los distintos tipos de dato que pueden emplearse en la
programación con Java. En concreto, se presentan los tipos primitivos
en Java, así como las constantes y las variables.
- LO-F-004. Tema 4: Operadores (PDF)
Un operador lleva a cabo operaciones sobre uno (operador unario),
dos (operador binario) o tres (operador ternario) datos u operandos de
tipo primitvo devolviendo un valor determinado también de un tipo
primitivo. El tipo de valor devuelto tras la evaluación depende del
operador y del tipo de los operandos. Los operadores se pueden
clasificar en distintos grupos según se muestra en este
capítulo.
- LO-F-005. Tema 5: Sentencias selectivas o
condicionales (PDF)
Cuando se escribe un programa, se introduce la secuencia de
sentencias dentro de un archivo. Sin sentencias de control del flujo,
el intérprete ejecuta las sentencias conforme aparecen en el programa
de principio a fin. Las sentencias de control de flujo se emplean en
los programas para ejecutar sentencias condicionalmente, repetir un
conjunto de sentencias o, en general, cambiar el flujo secuencial de
ejecución. Las sentencias selectivas o condicionales se verán en este
capítulo y las sentencias repetitivas en el siguiente.
- LO-F-006. Tema 6: Sentencias repetitivas o
bucles (PDF)
Los bucles, iteraciones o sentencias repetitivas modifican el
flujo secuencial de un programa permitiendo la ejecución reiterada de
una sentencia o sentencias. En Java hay tres tipos diferentes de
bucles: for, while y do-while.
- LO-F-007. Tema 7: Otras
sentencias (PDF)
En este capítulo se muestra el funcionamiento de otras sentencias
de control de Java, en concreto, break, continue y try-catch. La
primera puede utilizarse conjuntamente y encontrarse tanto en
sentencias switch como en bucles, la segunda sólo en bucles y la
tercera permite la gestión de excepciones.
- LO-F-008. Tema 8: Sentencia return o
métodos (PDF)
La sentencia return se emplea para salir de la secuencia de
ejecución de las sentencias de un método y, opcionalmente, devolver un
valor. Tras la salida del método se vuelve a la secuencia de ejecución
del programa al lugar de llamada de dicho método.
- LO-F-009. Tema 9: Objetos y
clases (PDF)
Aunque parezca una obviedad, la base de la Programación Orientada
a Objetos es el objeto. En la vida real todos los objetos tienen una
serie de características y un comportamiento. Por ejemplo, una puerta
tiene color, forma, dimensiones, material... (goza de una serie de
características) y puede abrirse, cerrarse... (posee un
comportamiento). En Programación Orientada a Objetos, un objeto es una
combinación de unos datos específicos y de las rutinas que pueden
operar con esos datos.
- LO-F-010. Tema 10: Algunas clases estándar
de Java (I) (PDF)
Uno de los puntos fuertes de Java es la gran cantidad de clases
predefinidas que posee. Dichas clases pueden ser utilizadas por los
programadores sin necesidad de reinventar la rueda. En este capítulo se
presentan algunas de las clases predefinidas de Java que se suelen
utilizar más en la construcción de programas.
- LO-F-011. Tema 11: Algunas clases estándar
de Java (II) (PDF)
Otra clase estándar muy empleada en Java es la clase array o
vector. El término español vector para referirse a esta clase de
objetos puede dar lugar a confusión ya que existe una clase Vector
predefinida en Java. En este caso y sin que sirva de precedente, es
conveniente emplear el término inglés array.
- LO-F-012. Tema 12: Tipos de
atributos (PDF)
Los atributos, también llamados datos o variables miembro son
porciones de información que un objeto posee o conoce de sí mismo. Una
clase puede tener cualquier número de atributos o no tener ninguno. Se
declaran con un identificador y el tipo de dato correspondiente. Además
los atributos y tienen asociado un modificador que define su
visibilidad.
- LO-F-013. Tema 13: Constructores
(PDF)
Aunque en un principio pueda parecer lo contrario, un constructor
no es en realidad un método estrictamente hablando. Un constructor es
un elemento de una clase cuyo identificador coincide con el de la clase
correspondiente y que tiene por objetivo obligar a y controlar cómo se
inicializa una instancia de una determinada clase, ya que el lenguaje
Java no permite que las variables miembro de una nueva instancia queden
sin inicializar. Además, a diferencia de los métodos, los constructores
sólo se emplean cuando se quiere crear una nueva instancia.
- LO-F-014. Tema 14: Tipos de
métodos (PDF)
Un método es una abstracción de una operación que puede hacer o
realizarse con un objeto. Una clase puede declarar cualquier número de
métodos que lleven a cabo operaciones de lo más variado con los
objetos. En este capítulo los métodos se clasifican en dos grupos: los
métodos de instancia y los métodos de clase. Además se cierra la
sección con los métodos estáticos de la clase Math.
- LO-F-015. Tema 15: Parámetros o
argumentos (PDF)
Los parámetros o argumentos son una forma de intercambiar
información con el método. Pueden servir para introducir datos para
ejecutar el método (entrada) o para obtener o modificar datos tras su
ejecución (salida).
- LO-F-016. Tema 16: Herencia (PDF)
La herencia es una propiedad que permite la declaración de nuevas
clases a partir de otras ya existentes. Esto proporciona una de las
ventajas principales de la Programación Orientada a Objetos: la
reutilización de código previamente desarrollado ya que permite a una
clase más específica incorporar la estructura y comportamiento de una
clase más general.
- LO-F-017. Tema 17: Otras relaciones entre
objetos (PDF)
Además de la relación de herencia las clases empleadas dentro de
una aplicación Java, los objetos pueden estar conectados dentro de un
programa con otros tipos de relaciones. En cualquier caso, en la mayor
parte de los casos la resolución de un problema más o menos complejo
exige la colaboración entre objetos. Esta colaboración se puede llevar
a cabo mediante el establecimiento de relaciones entre objetos
diferentes de la herencia.
- LO-F-018. Tema 18: Interfaces (PDF)
Una interfaz es una especie de plantilla para la construcción de
clases. Normalmente una interfaz se compone de un conjunto de
declaraciones de cabeceras de métodos (sin implementar, de forma
similar a un método abstracto) que especifican un protocolo de
comportamiento para una o varias clases.
- LO-F-019. Tema 19: Packages o
paquetes (PDF)
Aunque la mayoría de los programas que se han realizado hasta
ahora han constado de una única clase o de unas pocas almacenadas en
uno o pocos archivos, habitualmente una aplicación Java se compone de
una colección de clases más o menos numerosa. Cuando los programas son
relativamente grandes o se trabaja en equipo, es recomendable dividir
el código en varios archivos fuente. Un paquete o package de Java es un
conjunto de clases e interfaces relacionadas entre sí.