Documentos de Académico
Documentos de Profesional
Documentos de Cultura
MA Programacion Orientada A Objetos
MA Programacion Orientada A Objetos
POO-ES
REV00
INGENIERÍA EN SISTEMAS
COMPUTACIONALES
COMPUTACIONALES
PROGRAMACION
ORIENTADA A OBJETOS
DIRECTORIO
II
PÁGINA LEGAL
Participantes
ISBN-----------------
III
ÍNDICE
Introducción..................................................................................... 1
Ficha técnica................................................................................... 2
Método de Evaluación.................................................................... 4
Desarrollo prácticas........................................................................ 5
Instrumentos de evaluación………………………………………………….. 9
Glosario……………………………………………………………………………….. 22
Bibliografía...................................................................................... 32
IV
INTRODUCCIÓN
1
PROGRAMA DE ESTUDIOS
1
FICHA TÉCNICA
Clave: POO-ES
2
4. Manejo de excepciones básicas 12 0 12 8
3
MÉTODO DE EVALUACIÓN
4
DESARROLLO DE LA PRÁCTICA O PROYECTO
01 2 hrs
Número: Duración (horas) :
• Definir una solución a un problemática haciendo uso de las
estructuras de secuencia, decisión e iteración en tipos de datos
Resultado de
abstractos en el paradigma de programación orientada a objetos
aprendizaje:
• Desarrollar la solución propuesta en un lenguaje de programación
orientada a objetos
Pizarrón, Diapositivas, Diagramas y esquemas, Equipo de cómputo, Cañón..
Requerimientos (Material
Laboratorio de cómputo.
o equipo):
Editor y compilador de un lenguaje de programación orientado a objetos.
Actividades a desarrollar en la práctica:
1.1 Escriba una aplicación que solicite un número de elementos a ser introducidos por el usuario. Al terminar de
introducir los números la aplicación deberá localizar el menor y mayor número del conjunto de elementos
introducidos.
1.2 Una aplicación interesante de las computadoras es dibujar gráficos convencionales y de barra. Escriba una
aplicación que lea cinco números, los cuáles deben estar en un rango entre 1 y 30. Por cada número leído, su
programa debe mostrar ese número de asteriscos adyacentes. Por ejemplo, si su programa lee un número como el 7
*******
1.3 Un almacén de pedidos por correo vende 5 productos cuyos precios de venta son las siguientes: producto 1:
$2.98, producto 2: $4.50, producto 3: $9.98, producto 4: $4.49, producto 5:6.87. Escriba una aplicación que lea
una serie de pares de números, como se muestra a continuación:
a) número del producto.
b) cantidad vendida
Su programa debe de utilizar una instrucción switch para determinar el precio de venta de cada producto. Debe
calcular y mostrar el valor total de venta de todos los productos vendidos. Usar un ciclo controlado por centinela
para determinar cuándo debe el programa dejar de iterar para mostrar los resultados finales.
5
1.4 Escriba una aplicación que imprima la siguiente figura de rombo. Puede utilizar instrucciones de salida que
impriman un solo asterisco
*
***
*****
*******
*****
***
*
1.5 Escriba un programa en Java que nos calcule el cambio que debe dar la caja de un supermercado: Dado un precio y
una cantidad de dinero, el programa nos dirá cuántas monedas deben darse como cambio de tal forma que el número total
de monedas sea mínimo.
1.6 Un banco recibe todos los días del Banco Mundial una lista de cómo está el cambio de las divisas del mundo respecto
del dólar americano (USD). Diseñar un algoritmo que, a partir de una cantidad de dólares que deseamos comprar, nos
devuelva la cantidad en euros (y en pesetas) que nos costarían esos dólares. Suponga que el banco obtiene en el cambio un
tanto por ciento variable de beneficios.
1.8 Implemente un programa que lea un número decimal y lo muestre en pantalla en hexadecimal (base 16). El cambio de
base se realiza mediante divisiones sucesivas por 16 en las cuales los restos determinan los dígitos hexadecimales del
número según la siguiente correspondencia:
Resto 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Dígito 0 1 2 3 4 5 6 7 8 9 A B C D E F
1.9 Diseñe un programa para jugar a adivinar un número entre 0 y 100. El programa irá dando pistas al jugador
indicándole si el número introducido por el jugador es menor o mayor que el número que tiene que adivinar. El juego
termina cuando el jugador adivina el número o decide terminar de jugar (por ejemplo, escribiendo un número negativo).
6
DESARROLLO DE LA PRÁCTICA O PROYECTO
02 2 hrs
Número: Duración (horas) :
• Definir una solución a un problemática haciendo uso correcto de
constructores y la palabra reservada *this en el paradigma de
Resultado de
programación orientada a objetos
aprendizaje:
• Desarrollar la solución propuesta en un lenguaje de programación
orientada a objetos
Pizarrón, Diapositivas, Diagramas y esquemas, Equipo de cómputo, Cañón..
Requerimientos (Material
Laboratorio de cómputo.
o equipo):
Editor y compilador de un lenguaje de programación orientado a objetos.
Actividades a desarrollar en la práctica:
1.1 Diseñe jerarquías de clases para representar los siguientes conjuntos de objetos:
a. Una colección de CDs, entre los cuales hay discos de música (CDs de audio), discos de música en MP3 (CD-
ROMs con música), discos de aplicaciones (CD-ROMs con software) y discos de datos (CD-ROMs con datos y
documentos).
b. Los diferentes productos que se pueden encontrar en una tienda de electrónica, que tienen un conjunto de
características comunes (precio, código de barras…) y una serie de características específicas de cada producto.
c. Los objetos de una colección de monedas/billetes/sellos. Implemente en Java las jerarquías de clases que haya
diseñado (incluyendo sus variables de instancia, sus constructores y sus métodos get/set).
A continuación, escriba sendos programas que realicen las siguientes tareas:
a. Buscar y mostrar todos los datos de un CD concreto (se recomienda definir el método toString en cada una de
las subclases de CD).
b. Crear un carrito de la compra en el que se pueden incluir productos y emitir un ticket en el que figuren los datos
de cada producto del carrito, incluyendo su precio y el importe total de la compra.
c. Un listado de todos los objetos coleccionables cuya descripción incluya una cadena de caracteres que el
programa reciba como parámetro.
7
1.2 Implemente un programa que cree un objeto de la clase Random del paquete java.util, genere un número entero
aleatoriamente y lo muestre en pantalla.
1.3 Cree un paquete denominado documentos…
a. Incluya en él dos clases, Factura y Pedido, para representar facturas y pedidos, respectivamente.
b. A continuación, ya fuera del paquete, cree un pequeño programa que cree objetos de ambos tipos y los muestre por
pantalla.
c. Añada un tercer tipo de documento, PedidoUrgente, que herede directamente de Pedido. Compruebe que el programa
anterior sigue funcionando correctamente si reemplazamos un Pedido por un PedidoUrgente.
d. Cree un nuevo tipo de documento, denominado Contrato, e inclúyalo en el subpaquete documentos.RRHH. En este
último paquete, incluya también un tipo de documento CV para representar el currículum vitae de una persona.
e. Si no lo ha hecho ya, cree una clase genérica Documento de la que hereden (directa o indirectamente) todas las demás
clases que hemos definido para representar distintos tipos de documentos.
f. Implemente un pequeño programa que cree un documento de un tipo seleccionado por el usuario. Muestre por pantalla el
documento independientemente del tipo concreto de documento que se haya creado en el paso anterior.
OBSERVACIONES:
Para cada clase que defina, determine qué miembros de la clase han de ser públicos (public), cuáles han de mantenerse
privados (private) y, si lo considera oportuno, cuáles serían miembros protegidos (protected).
Tenga en cuenta que no siempre se debe permitir la modificación desde el exterior de una variable de instancia (esto es,
habrá variables de instancia a las que asociemos un método get pero no un método set y, de hacerlo, éste puede que sea
privado o protegido).
Analice también qué métodos de una clase deben declararse con la palabra reservada final para que no se puedan redefinir
en subclases y qué clases han de ser “finales” (esto es, aquellas clases de las que no queramos permitir que se creen
subclases).
En los distintos programas de esta relación de ejercicios puede resultar necesaria la creación de colecciones de objetos de
distintos tipos (p.ej. arrays de CDs, productos, objetos coleccionables o documentos).
Evidencias a las que contribuye el desarrollo de la práctica
ED1 Realiza práctica sobre el manejo de constructores y métodos para establecer, obtener y hacer uso
de la palabra reservada this dentro de una clase utilizando el paradigma orientado a objetos.
8
9
INSTRUMENTOS DE EVALUACIÓN
Cuestionario
“Conceptos de Programación Orientada a Objetos”
UNIDAD 1 EC 1
10
INSTRUMENTOS DE EVALUACIÓN
Guía de observación para Identificación de paradigmas orientados a
objetos
UNIDAD 1 ED 1
INSTRUCCIONES
Revisar los documentos o actividades que se solicitan y marque en los apartados “SI” cuando la evidencia a evaluar se
cumple; en caso contrario marque “NO”. En la columna “OBSERVACIONES” ocúpela cuando tenga que hacer
comentarios referentes a lo observado.
11
INSTRUMENTOS DE EVALUACIÓN
Lista de Cotejo
“Diseño
“Diseño de programas utilizando diferentes paradigmas orientados a
objetos”
UNIDAD 1 EP 1
INSTRUMENTOS DE EVALUACIÓN
LISTA DE COTEJO
DATOS GENERALES DEL PROCESO DE EVALUACIÓN
NOMBRE DEL ALUMNO: MATRICULA: FIRMA DEL ALUMNO:
PRODUCTO: PARCIAL: FECHA:
MATERIA: CLAVE:
NOMBRE DEL PROFESOR: FIRMA DEL PROFESOR:
INSTRUCCIONES
Revisar las actividades que se solicitan y marque en los apartados “SI” cuando la evidencia se cumple; en caso
contrario marque “NO”. En la columna “OBSERVACIONES” ” mencione indicaciones que puedan ayudar al alumno
a saber cuales son las condiciones no cumplidas, si fuese necesario
Valor Característica a cumplir (Reactivo) Cumple Observaciones
Si No
Presentación. El reporte cumple con los requisitos de:
5% a. Buena Presentación
5% b. No tiene faltas de ortografía
5% c. Maneja el lenguaje técnico apropiado
Contenido
a. Diagrama del Diseño de la solución. El diagrama cumple con
15% las especificaciones del modelo orientado a objetos.
30% b. Codificación. Presenta un código en el lenguaje de
programación orientada a objetos sin errores.
Desarrollo. Sustenta todos los pasos aplicados para la solución
15% de las prácticas utilizando operaciones con estructuras de
secuencia, selección e iteración.
10% Resultados. Cumplió totalmente con el objetivo esperado
Pantallas del ejercicio en ejecución. Las pantallas muestran el
10% funcionamiento claro y acorde con el objetivo esperado
5% Responsabilidad. Entregó el reporte en la fecha y hora señalada
100% Calificación
12
INSTRUMENTOS DE EVALUACIÓN
Guía de observación para Práctica
“Estructura de secuencia, selección e iteración”
UNIDAD 2 ED 1
INSTRUCCIONES
Revisar los documentos o actividades que se solicitan y marque en los apartados “SI” cuando la evidencia a evaluar se
cumple; en caso contrario marque “NO”. En la columna “OBSERVACIONES” ocúpela cuando tenga que hacer
comentarios referentes a lo observado.
13
INSTRUMENTOS DE EVALUACIÓN
Lista de Cotejo
“Problemario de ejercicios en aplicaciones con arreglos”
UNIDAD 2 EP 1
INSTRUMENTOS DE EVALUACIÓN
LISTA DE COTEJO
DATOS GENERALES DEL PROCESO DE EVALUACIÓN
NOMBRE DEL ALUMNO: MATRICULA: FIRMA DEL ALUMNO:
PRODUCTO: PARCIAL: FECHA:
MATERIA: CLAVE:
NOMBRE DEL PROFESOR: FIRMA DEL PROFESOR:
INSTRUCCIONES
Revisar las actividades que se solicitan y marque en los apartados “SI” cuando la evidencia se cumple; en caso
contrario marque “NO”. En la columna “OBSERVACIONES” ” mencione indicaciones que puedan ayudar al alumno
a saber cuales son las condiciones no cumplidas, si fuese necesario
Valor Característica a cumplir (Reactivo) Cumple Observaciones
Si No
Presentación. El reporte cumple con los requisitos de:
5% a. Buena Presentación
5% b. No tiene faltas de ortografía
5% c. Maneja el lenguaje técnico apropiado del paradigma POO
Contenido
a. Diagrama del Diseño de la solución. Los diagramas cumplen
15% con las especificaciones del modelo orientado a objetos.
30% b. Codificación. Presenta cada ejercicio un código en el lenguaje
de programación orientada a objetos sin errores.
15% Desarrollo. Sustenta todos los pasos aplicados para la solución
de las prácticas utilizando operaciones con arreglos.
10% Resultados. Cumplió totalmente con el objetivo esperado
Pantallas del ejercicio en ejecución. Las pantallas muestran el
10% funcionamiento claro y acorde con el objetivo esperado
5% Responsabilidad. Entregó el reporte en la fecha y hora señalada
100% Calificación
14
Rubrica para programa orientado a objetos aplicando métodos, sobrecarga
sobrecarga y sobreescritura
UNIDAD 2 EP2
15
INSTRUMENTOS DE EVALUACIÓN
Guía de observación para Práctica
“Manejo de constructores y palabra reservada this”
UNIDAD 3 ED 1
UNIVERSIDAD POLITÉCNICA
POLITÉCNICA DE ____________________
INSTRUCCIONES
Revisar los documentos o actividades que se solicitan y marque en los apartados “SI” cuando la evidencia a evaluar se
cumple; en caso contrario marque “NO”. En la columna “OBSERVACIONES” ocúpela cuando tenga que hacer
comentarios referentes a lo observado.
16
INSTRUMENTOS DE EVALUACIÓN
Lista de Cotejo
“Elaboración
“Elaboración de programas computacionales herencia y polimorfismo”
UNIDAD 3 EP 1
INSTRUMENTOS DE EVALUACIÓN
LISTA DE COTEJO
DATOS GENERALES DEL PROCESO DE EVALUACIÓN
NOMBRE DEL ALUMNO: MATRICULA: FIRMA DEL ALUMNO:
PRODUCTO: PARCIAL: FECHA:
MATERIA: CLAVE:
NOMBRE DEL PROFESOR: FIRMA DEL PROFESOR:
INSTRUCCIONES
Revisar las actividades que se solicitan y marque en los apartados “SI” cuando la evidencia se cumple; en caso
contrario marque “NO”. En la columna “OBSERVACIONES” ” mencione indicaciones que puedan ayudar al alumno
a saber cuales son las condiciones no cumplidas, si fuese necesario
Valor Característica a cumplir (Reactivo) Cumple Observaciones
Si No
Presentación. El reporte cumple con los requisitos de:
5% a. Buena Presentación
5% b. No tiene faltas de ortografía
5% c. Maneja el lenguaje técnico apropiado del paradigma POO
Contenido
a. Diagrama del Diseño de la solución. Los diagramas cumplen
con las especificaciones del modelo orientado a objetos
15% específicamente el uso de herencia y polimorfismo.
30% b. Codificación. Presenta cada ejercicio un código en el lenguaje
de programación orientada a objetos sin errores.
15% Desarrollo. Sustenta todos los pasos aplicados para la solución
de las prácticas utilizando herencia y polimorfismo.
10% Resultados. Cumplió totalmente con el objetivo esperado
Pantallas del ejercicio en ejecución. Las pantallas muestran el
10% funcionamiento claro y acorde con el objetivo esperado
5% Responsabilidad. Entregó el reporte en la fecha y hora señalada
100% Calificación
17
INSTRUMENTOS DE EVALUACIÓN
Cuestionario
“Conceptos sobre el manejo de excepciones”
UNIDAD 4 EC 1
4. Match each situation in the first list with an item in the second list.
a. int[] A;
A[0] = 0;
b. The JVM starts running your program, but the JVM can't find the Java platform classes. (The
Java platform classes reside in classes.zip or rt.jar.)
c. A program is reading a stream and reaches the end of stream marker.
d. Before closing the stream and after reaching the end of stream marker, a program tries to
read the stream again.
18
0. __error
1. __checked exception
2. __compile error
3. __no exception
Exercises
1. Add a readList method to ListOfNumbers.java. This method should read in int values
from a file, print each value, and append them to the end of the vector. You should catch
all appropriate errors. You will also need a text file containing numbers to read in.
import java.io.*;
import java.util.Vector;
public ListOfNumbers () {
victor = new Vector<Integer>(SIZE);
for (int i = 0; i < SIZE; i++)
victor.addElement(new Integer(i));
}
public void writeList() {
PrintWriter out = null;
try {
System.out.println("Entering try statement");
out = new PrintWriter(new FileWriter("OutFile.txt"));
19
2. Modify the following cat method so that it will compile.
20
INSTRUMENTOS DE EVALUACIÓN
Guía de observación para Exposici
Exposición
ición
“Excepciones en el Paradigma
Paradigma Orientado a Objetos”
UNIDAD 3 ED 1
17.
UNIVERSIDAD POLITÉCNICA
POLITÉCNICA DE ____________________
INSTRUCCIONES
Revisar los documentos o actividades que se solicitan y marque en los apartados “SI” cuando la evidencia a evaluar se
cumple; en caso contrario marque “NO”. En la columna “OBSERVACIONES” ocúpela cuando tenga que hacer
comentarios referentes a lo observado.
21
GLOSARIO
Abstraction (abstracción):
(abstracción) Propiedad y/o técnica de software que oculta los detalles de la implementación. Java
soporta abstracción de clases y abstracción de métodos. La abstracción de métodos se define separando el
uso de un método sin conocer como está implementado ese método. Si decide combinar la implementación, el
programa cliente será afectado. De modo similar la abstracción de clases oculta la implementación de la clase
del cliente.
Acoplamiento (coupling) Medida del grado en el que un objeto o componente depende de otro. Bajo
acoplamiento minimiza las dependencias y es una indicación de un buen diseño
Agregación (aggregation) Relación en la que un objeto se compone o está construido de uno o más objetos, de
modo que la colección completa representa un todo. Las relaciones de agregación se especifican entre clases
y se reflejan en instancias de objetos
Algoritmo (algorithm) Método que describe cómo se resuelve un problema en término de las acciones que se
ejecutan y especifica el orden en que se ejecutan estas acciones. Los algoritmos ayudan al programador a
planificar un programa antes de su escritura en un lenguaje de programación.
Ámbito de clase (scope class) Las variables privadas definidas fuera de los métodos internos a la clase tienen
ámbito de clase. Son accesibles desde todos los métodos del interior de la clase, con independencia del orden
en que están definidas. Los métodos privados también tienen ámbito de clase.
Análisis (análysis)
(análysis) Proceso de identificación, modelado y descripción de lo que hace un sistema y de cómo
trabaja
Aplicación (application) Programa autónomo. Java tal como cualquier programa escrito utilizando un lenguaje
de alto nivel. Las aplicaciones se pueden ejecutar desde cualquier computadora con un intérprete Java. Las
aplicaciones no están sometidas a las restricciones impuestas a los applets de Java. Una clase aplicación debe
contener un método main. Se utiliza como sinónimo de programa.
Applet Tipo especial de programa Java que se puede ejecutar (correr) directamente en un navegador Web o en
un visualizador applet. A un applet se le imponen diversas restricciones de seguridad. Por ejemplo, un applet
no se puede ejecutar operaciones de entrada/salida en un sistema de usuario y por consiguiente no puede
leer o escribir archivos o transmitir virus de computadora.
Argumento (argument) Información pasada a un método. Los argumentos se suelen llamar también
parámetros. Un método que espera recibir argumentos debe contener una declaración de argumentos
formales por cada argumento actual como parte de la cabecera del mismo. Cuando se invoca a un método, los
valores de los argumentos actuales 8reales) se copia en los correspondientes argumentos formales. Véase
parámetro actual (actual parameter).
Array (array, vector, lista) Objeto contenedor que almacena una secuencia indexada de los mismos tipos de
datos. Normalmente los elementos individuales se referencian por el valor de un índice. El índice es un valor
entero que suele comenzar, en 0 para el primer elementos, 1 para el segundo y así sucesivamente.
Asociación (association) Una relación entre dos clases tales como una instancia de una clase referencia a una
instancia de otra clase.
Asociatividad (associativity) Orden en que se evalúan operadores de igual precedencia o prioridad dentro de
una expresión. La asociatividad por la izquierda produce una evaluación de izquierda a derecha y la
asociatividad por la derecha conduce a una evaluación de derecha a izquierda.
22
AWT(ABSTRACT WINDOW TOOLKIT) Colección de clases (java.awt.*) que se utiliza para implementar interfaces
gráficas de usuario. Contiene componentes tales como botones, etiquetas, campos de texto, áreas de texto,
barras de desplazamiento, cajas de verificación y menús. Las clases de AWT proporcionan una interfaz
independiente de la plataforma para desarrollo de programas visuales e interfaces gráficas de usuario.
Biblioteca de clases (class library) Colección organizada de clases que proporciona un conjunto de
componentes y abstracciones reutilizables
Binario (binary)
(binary) Representación numérica en base 2. En esta base sólo se utilizan los dígitos 0 y 1. Las
posiciones de los dígitos representan potencias sucesivas de 2. Véase bit.
Binding (ligadura)
Bit Dígito binario que puede tomar dos valores posibles: 0 y 1. Los bits son elementos básicos de construcción
de programas y datos
Bloque (block) Sentencias y declaraciones encerradas entre una pareja de llaves (apertura y cierre, ´{´ y ´}´.
Por ejemplo, un cuerpo de una clase, es un bloque, al igual que el cuerpo de un método, un bloque delimita un
nivel de ámbito.
Boo
Boolean (bolean, lógico) Tipos primitivos de datos en Java. El tipo bolean puede tomar sólo dos valores: true
(verdadero) y false (falso).
Bytecode (cód
(códi
códigos de byte) Resultado de la compilación del código fuente Java. La JVM (Java Virtual Machine)
interpreta los bytecodes con la finalidad de ejecutar un programa Java. El bytecode es independiente de la
máquina y se puede ejecutar en cualquier máquina que tenga un entorno de ejecución. Los bytecodes se
almacenan en archivos class.
Clase (clase) Colección encapsulada de datos y operaciones que actúan sobre los datos. El concepto de clase
es fundamental en programación orientada a objetos. Una clase consta de métodos y datos. Los métodos de
una clase definen el conjunto de operaciones permitidas sobre los datos de una clase (sus atributos). Una
clase puede tener muchas instancias de la clase u objetos.
Clase abstracta (abstract class) Superclase que contiene características comunes compartidas por las
subclases. Se declaran utilizando la palabra reservada abstract. Las clases abstractas pueden contener datos
y métodos, pero no se pueden instanciar (crear objetos); es decir, no se pueden crear objetos de esta clase.
Clase cliente (client class) Clase que hace uso de otra clase.
Clase concreta (concrete class) Una clase diseñada para crear (tener) instancias de objetos
Clase interna (inner class) Una clase interna es una clase empotrada en otra clase. Las clases internas
permiten definir pequeños objetos auxiliares y unidades de comportamiento que hacen a los programas más
simples y concisos.
Clase interna (inner class) Término utilizado para describir una clase declarada dentro de otra declaración de
clases.
23
Clase miembro (member class) Término general utilizado para describir una clase declarada dentro de otra
declaración de clases.
Cohesivo (cohesive) Modo de describir una clase que tiene partes fuertemente integradas, cada una de las
cuales contribuye a describir las mismas abstracciones.
Comen
Comentario (comment) Trozo de texto que tienen como objetivo documentar el programa y mostrar como se ha
construido. Los comentarios no son sentencias de programación y son ignorados por el compilador. En Java los
comentarios están precedidos por dos barras (//) en una línea o encerrados entre /+ y */ en múltiples líneas.
Compilación (compiling) Nombre dado al proceso de traducción del código fuente a bytecodes.
Compilador (compiler) Programa de software que realiza un proceso de compilación (traducción del lenguaje
fuente a lenguaje máquina) de un programa escrito en un lenguaje de programación de alto nivel. En el caso
de Java, es un programa que traduce el código fuente Java en bytecode. El compilador de J2SDK se denomina
javac.
Constante (constant) Una variable declarada en final en Java. Una constante de la clase normalmente está
compartida por todos los objetos de la misma clase; por consiguiente, una constante de clase se declara
normalmente como static. Una constante local es una constante declarada dentro de un método.
Constructor (constructor) Método especial utilizado para inicializar el estado de un nuevo objeto. El constructor
permite crear objetos utilizando el operador new. El constructor tiene exactamente el mismo nombre que la
clase que lo contiene. Los constructores se pueden sobrecargar con el objetivo de facilitar la construcción de
objetos con diferentes tipos de valores iniciales.
Contenedor (container) Clase que implementa una estructura de datos que contiene una colección de objetos.
Se utiliza también para representar un componente IGU , Interfaz Gráfica de Usuario (GUI; Graphical User
Interface) que contiene una colección de otros componentes IGU
Cuerpo de la clase (class body) Cuerpo de una definición de una clase que agrupa las definiciones de los
miembros de la clase: campos, métodos y clases anidadas.
Depuración (debugging) Proceso de encontrar, fijar y eliminar errores en un programa. Para estas tareas se
suele utilizar una herramienta de programación conocida como depurador.
24
Depurador (debugger) Herramienta para ayudar a la localización de errores de un programa: jdbc se
proporciona como parte del J2SDK. Un depurador puede establecer puntos de interrupción (breakpoint),
parada simple a través de un programa e inspecciona el estado de las variables.
Diagrama de clases (class diagram) Una representación gráfica construida utilizando una notación formal para
visualizar y documentar las relaciones entre clases de un sistema.
Encapsulamiento, encapsulación
encapsulación (encapsulation) Localización y protección de las características internas y
estructura de un objeto. Combinación de métodos y datos en una única estructura de datos. En Java se conoce
como clase
Entero (integer)
(intege Un número completo (no es un número real con coma decimal) tal como –5, 1, 10 y 2002. Los
enteros se pueden representar en Java de dos formas: utilizando el tipo primitivo int o utilizando una instancia
de una clase integer.
Excepción (exception) Un suceso (evento) no previsto que indica que un programa ha fallado en alguna forma.
Las excepciones se representan por objetos excepción en java. Las excepciones se manejan con un bloque de
sentencias try/catch.
Expresión (expresión) Una subparte de una sentencia que representa un valor. Por ejemplo, la expresión
aritmética ´2+5´ representa el valor 7. En Java, cualquier construcción sintáctica legal que represente un valor
es una expresión.
Expresión booleana lógica (Bolean expresión) Una expresión cuyo resultado es del tipo lógico (boolean, bol),
Operadores tales como && y || toman operandos lógicos y producen un resultado lógico. Los operadores
relacionales toman operandos de tipos diferentes y producen un resultado lógico.
Final (final) Modificador de clases, datos, métodos y variables locales. Una clase final no se puede extender, un
dato final o variable local es una constante y un método final no se puede anular (sustituir) en una subclase.
Formal parameter (parámetro formal) Parámetros definidos en la signatura o declaración del método.
Función (function) Construcción matemática a la que se pueden aplicar valores y que devuelve un resultado.
Herencia (inheritance)
(inheritance) Una relación entre clases en que una subclase se extiende desde una superclase.
HTML (Hypertext Markup Language) Lenguaje de ´script´ o de marcas para diseñar páginas Web para creación
y compartición de documentos electrónicos integrados preparados para multimedia e Internet.
J2SK El Java 2 Software Kit distribuido por Inn proporciona el conjunto de herramientas para escribir
programas Java, contiene las bibliotecas de clase Java, el compilador Java (javac)y una colección de otras
utilidades. Las versiones se numeran en secuencia con 1.2,1.3,1.4(la más reciente dentro de la
implementación de la plataforma Java 2).
IDE (integrated development) Software para ayudar a lso programadores a escribir código eficientemente.
IGU, Interfaz Gráfica de Usuario (GUI, Graphical User Interface) Una interfaz es un programa que se implementa
utilizando componentes AWT tales como cuadros, botones, etiquetas, campos de texto, etc.
25
Implementación (implementation) La actividad de escribir, compilar, probar y depurar el código de un
programa.
Instanciación (instantion)
(instantion) Proceso de crear un objeto de una clase.
Interfaz (interface) Una interfaz se trata como una clase especial de Java. Cada interface se compila en un
archivo independiente de bytecode, tal como una clase ordinaria. No se puede crear una instancia de la
interfaz. La estructura de una interfaz Java es similar al de una clase abstracta en la que se puede tener datos
y métodos. Los datos, sin embargo, deben ser constantes y los métodos pueden tener sólo declaraciones sin
implementación. En Java existe sólo herencia simple y una clase puede heredar de una superclase. Esta
restricción se puede superar por el uso de una interfaz.
Interprete (Interpreter) Software que interpreta y ejecuta bytecode de Java. La máquina virtual Java (JVM) es un
intérprete de bytecodes de Java que proporciona una emulación de software de un procesador de máquina.
JDK (Java development kit) vease J25KJ. Define el APJ de Java y contiene un conjunto de utilidades de líneas
de órdenes tales como Javac (compilador) y Java(interprete).
JVM, Máquina Virtual Java (Java Virtual Machine) Una emulación de software de una máquina que puede
ejecutar bytecodes de Java. Proporciona una implementación del procesador, sistema de memoria e interfaces
a dispositivos hardware. Todos los programas Java se compilan a bytecodes que se ejecutan por una JVM.
Ligadura dinámica (dynamic binding) Ligadura o enlace del nombre de un método al cuerpo de dicho método
que se ejecuta mientras que un programa se está ejecutando , al contrario del enlace que se produce cuando
se compila el programa.
Manejador de sucesos (event handler) Un método en el que el objeto “oyente” se ha diseñado para hacer
algún proceso especificado cuando ocurre un suceso determinado.
Mensaje (message) Una petición enviada a un objeto que solicita ejecutar una operación determinada. El
mensaje incluye un nombre y una lista opcional de parámetros.
Método abstracto (abstract method) Método que sólo tiene signatura y no tiene cuerpo, y debe estar contenido
dentro de una clase abstracta. Su implementación se realiza en la subclase. Se representa mediante el
modificador abstract. Los métodos abstractos deben implementarse en una subclase no abstracta incluso
aunque no se utilicen.
26
Método de la clase (class method) Sinónimo de método estático. Un método que se puede invocar sin crear
una instancia de la clase. Para definir métodos de clases, se ha de poner un modificador static en la
declaración del método.
Método de la instancia (Instance method) Un método (o procedimiento) declarado por un clase que se llama
por sus objetos de instancias (o los de las subclases).
Moldeado (casting, conversión) Proceso de convertir un valor de un tipo de dato primitivo en otro tipo primitivo
o conversión de un objeto de un tipo de dato en otro tipo de objeto. Por ejemplo, (int) 4.5 convierte 4.5 en un
valore entero y (cuadrado)c convierte un objeto c en uno de tipo cuadrado
Moldear (cast,, convertir) Cambiar explícitamente el tipo de una expresión utilizando una expresión de
conversión (cast).
Palabra clave, reservada (keyword) En Java, una palabra clave (o palabra reservada) es una palabra definida
como parte del lenguaje de programación, Un nombre de palabra reservada no se puede utilizar para ningún
otro propósito. Palabra reservada,
reservada Palabra definida como parte del lenguaje Java
Parámetro actual o real (actual parameter) Valor que se pasa a un método cuando se invoca ese método. Los
parámetros reales (actuales) deben concordar en tipo, orden y número con los parámetros formales. Cuando
se invoca a un método, los valores de los argumentos actuales se copian en los correspondientes argumentos
formales.
Parámetro formal (formal parameter) Declaración de una variable parámetro en una lista de parámetros de un
método.
Plataforma de Java 2.
2 (Java 2 Plataform) Nombre de la versión más reciente de Java.
Sentencia compuesta (compound statement) Sentencia contenedora que consta de una secuencia de otras
sentencias y declaraciones. En Java se utilizan llaves ({ y }) para delimitar una sentencia compuesta.
Suceso (event) Un tipo de señal que indica ha ocurrido alguna acción. Normalmente se asocia con sucesos de
entrada de interfaces gráficas de usuario (p.e. el “clic” de un ratón, pulsación de una tecla, etc. ) El programa
puede responder o ignorar el suceso. Véase evento.
27
Tipo abstracto de datos ,TAD (ADT, Abstract Data Type) Especificación formal de un tipo de dato que consta de
un nombre, un conjunto de operaciones y una descripción algebraica del comportamiento de las operaciones.
Tipo de datos (data type) Los tipos de datos se utilizan para definir variables. Java soporta los tipos de datos
primitivos y tipos de datos objeto.
Tipo de datos (data type) Tipo de dato que se utiliza para definir variables. Java soporta tipos primitivos de
datos y tipos de datos objeto.
Variable de instancia (instance variable) Una variable declarada en una clase. Un miembro dato no estático de
una clase. Una copia de un método de una instancia existe en cada instancia de la clase que se crea.
Clase Principal (main class) Una clase que contiene un método principal (main). Mensaje (message) Petición
enviada a un objeto que solicita realizar una operación con nombre. El mensaje incluye un nombre y una lista
opcional de parámetros.
Método (method) Una colección de sentencias que se agrupan juntos para ejecutar una operación.
Method object
Sobrecarga de un método (method overloading) La sobrecarga de n método significa que se puede definir los
métodos con el mismo nombre de una clase siempre que haya diferencia en sus parámetros.
Nented class (Nented class) Una clase estática declarad dentro de otra clase. Denominada también una clase
anidad de nivel superior.
Anulación de métodos (method overriding) La anulación o sustitución de métodos significa que se puede
modificar el método de una subclase que está definida originalmente en una superclase.
Modificador (Modifer) Una palabra reservada en Java que especifica las propiedades de los datos, métodos y
clases, y como se pueden utilizar. Ejemplos de modificaciones son public, private y static.
Multihilo (mulithreading)
(mulithreadin Propiedad de un programa para ejecutar diversas tareas simultáneamente dentro de
un programa.
Red (network) Infraestructura que permite a los ordenadores comunicarseunos con otros.
En red (networking) Propiedad de los ordenadores y programas de ordenador que las permiten comunicarse
unos con otros a través de una red.
Objeto (object) Véase instancia. Una instancia de una clase específica. En general, se puede construir
cualquier número de objetos a partir de una clase.
Análisis orientado a objetos OOA (object oriented Analysis) Análisis realizado en términos de objetos, clase y
relaciones de clases.
Diseño orientado a objetos OOD (object.oriented design) Diseño realizado en términos de objetos, clases y
selecciones de clases.
28
Operador (operator) Operaciones para valores de tipos primitivos de datos. Ejemplos de operadores son +,-,*,/
y%
Programación orientada a objetos OOP (objectoriented programming) Un enfoque de programación que implica
organización de objetos y sus comportamiento en clases de componentes realizables.
Sobrecarga (overload) Proporciona dos o más métodos con el mismo nombre en el mismo ámbito ,diferenciado
por tener listas de parámetros diferentes.
Anular o sustituir (override) Donde un método de una subclase redefine y especializa un método del mismo
tipo heredado de una superclase.
Parámetro (parameter) Los parámetros formales se especifican en una declaración de un método en una
llamada a un método,
Lista de parámetros (parameter list) Lista de valores dados a un método para inicializar sus parámetros o la
lista de parámetros de las declaraciones de variables.
Variable parámetro (parameter variable) Variable declarad en una lista de parámetros formados de un método
y que se inicializa cuando se llama al método. Los bloques catch también utilizan variables parámetro.
Precedencia, prioridad (precedence) Prioridad de un operador en una expresión utilizada para determinar el
orden en que se evalúan los operadores.
Tipo primitivo (primitive type) Un tipo definido como parte del lenguaje Java en vez del declarado por una clase
o intefaz. Se denomina también tipos incorporados.
Privado (private) Un modificador de miembros de una clase, un miembro privado sólo puede ser referenciado
en el interior de la clase.
Programa (program) Un conjunto de instrucciones (o sentencias) que describen alguna aplicación o actividad
ejecutada en una computadora.
29
Tipo de dato primitivo (primitive data type) Los tipos de datos primitivos son byte, short, int, long,
float,double,bolean y char
Programador (progr
(programmer) Personas que diseña, escribe, prueba y depura programas.
Lenguaje de programación (programming language) Notación utilizada por los programadores para escribir
programas . un lenguaje tiene una sintaxis (las palabras y símbolos utilizadas para escribir códigos de
programa), una gramática (las reglas que definen una secuencia de palabras y símbolos significativos y
correctos) y semántica. Java es un lenguaje de programación.
Protegido (protected) Un modificador para los miembros de una clase. Un miembro protegido de una clase que
puede ser utilizado en la clase que está declarad o cualquier subclase derivada de esa clase.
Público (public) Un modificador de clases, datos y métodos a los que se puede acceder por todos los
programas.
Escenario (scenario) Descripción o conjunto de secuencias de sucesos que se utilizan para describir parte del
comportamiento de un programa.
Semántica (semantics) Conjunto de reglas que definen el significado de un programa sintácticamente válido.
Java toma un enfoque operacional en semántica de modo que el comportamiento y por consiguiente el
significado de un programa se define por la máquina sobre la que esta ejecutando el programa.
Signatura (signature)
Socket (socket) Término que describe la facilitación de comunicación entre un servidor y un cliente.
Código
Código fuente (source code) Texto de un programa antes de ser compilado. El texto se crea y edita utilizando
en editor ordinario y contiene caracteres normales, legibles. El código fuente ser utiliza para las personas para
describir programas sus componentes han de ser lo más legibles y comprensibles posibles.
Software engineering
Source code
Source text
Specification
Sentencia (statement) Una unidad de código que representa una acción o una secuencia de acciones. Las
sentencias se ejecutan en el orden en que están escritas y siempre terminan en un punto y coma.
Ligadura estática (static briding) Enlace o conexión de un nombre de un método a un cuerpo del método
ejecutados por el compilador mediante el análisis léxico del texto de un programa,
30
Método estático (static method) Véase método de una clase. Método declarado en una clave que se llama
directamente sin necesidad de que el objeto sea llamado.
Flujo (Stream) Término que describe el flujo de datos continuo de una dirección entre un emisor y un receptor.
Superclase (superclass) Una clase que puede ser heredada de otra clase.
Sintaxis (Syntax) Un conjunto de reglas que especifica la composición de programas a partir de palabras
reservadas, símbolos y caracteres. La sintaxis define la estructura de los programas legales en términos de
cómo las palabras reservadas y otros caracteres se pueden escribir y en qué orden.
Etiqueta (tag) Una instrucción HTML que indica a un navegador Web como visualizar un documento. Las
etiquetas se encierran entre corchetes tales como <html>, <i>, <b>, y </html>.
Hilo (thread) Un flujo de ejecución de una tarea que tiene un principio y un fin, en un programa.
UML (UML) Lenguaje unificado de modelado que proporciona notación estándar visual para documentar el
análisis y diseño de sistemas orientados a objetos.
Unicode (unicode)
(unicode Un sistema de codificación de caracteres internacionales gestionados por el consorcio
Unicode, Java soporta Unicode.
31
BIBLIOGRAFÍA
Básica
TÍTULO: Java How to Program, 7th Edition
AUTOR: Harvey M. Deitel y Paul J. Deitel
AÑO: 2007
EDITORIAL O REFERENCIA: Prentice Hall
LUGAR Y AÑO DE LA EDICIÓN January 6, 2007
ISBN O REGISTRO: 132222205
Complementaria
TÍTULO: Java: A Beginner's Guide, 4th Ed
AUTOR: Herbert Schildt
AÑO:
EDITORIAL O REFERENCIA: McGraw-Hill Osborne Media;
LUGAR Y AÑO DE LA EDICIÓN 4 edition (December 1, 2006)
ISBN O REGISTRO: 72263849
Sitio Web
http://java.sun.com
http://myphlip.pearsoncmg.com/phproducts/index.cfm?vbookid=720
http://myphlip.pearsoncmg.com/phproducts/index.cfm?vbookid=720
http://elvex.ugr.es/decsai/java/index.html
http://elvex.ugr.es/decsai/java/index.html
32