0% encontró este documento útil (0 votos)
116 vistas35 páginas

Ingredientes y Métodos en Java

Este documento presenta 10 preguntas sobre conceptos básicos de Java como clases, objetos, métodos, atributos, tipos de datos primitivos y no primitivos. Las preguntas cubren temas como los componentes básicos de un proyecto en Java, las diferencias entre variables y constantes, los tipos de datos enteros, y las características de métodos y atributos como estáticos y de instancia.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
116 vistas35 páginas

Ingredientes y Métodos en Java

Este documento presenta 10 preguntas sobre conceptos básicos de Java como clases, objetos, métodos, atributos, tipos de datos primitivos y no primitivos. Las preguntas cubren temas como los componentes básicos de un proyecto en Java, las diferencias entre variables y constantes, los tipos de datos enteros, y las características de métodos y atributos como estáticos y de instancia.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

Ingredientes básicos de Java

Puntos totales de 10
1.
Pregunta 1
Elige 3 opciones que corresponden a ingredientes de nuestros proyectos:
1 / 1 punto

Accesos

Identificadores

Clases
Correcto
😊 Vas a construir una o más clases como parte de tu proyecto.

Funciones propias
Correcto
😊 Algunas de las clases de tu proyecto tendrán funciones propias (métodos) que definan lo que los objetos de esa clase
pueden hacer.

Constantes
Correcto
😊 Tu proyecto tendrá algunas constantes para facilitar la posible modificación de este tipo de valores.
2.
Pregunta 2
Elige 2 opciones que hablan de una diferencia entre una variable y una constante en el lenguaje de programación Java:
0 / 1 punto

Las constantes pueden aparecer en cualquier expresión, pero las variables no

Las constantes tienen el modificador final y las variables no


Correcto
😊 Esto es cierto, ya sea que sean constantes de clase o de objeto. Si son de clase, también aparece el modificador static.

Las constantes tienen el modificador static y las variables no


Esto no debería estar seleccionado
☹ El modificador static se refiere a que pertenecen a la clase y todos los objetos usan el mismo ejemplar de ese
ingrediente.

Las constantes sólo pueden ser números mientras que las variables se pueden referir a cualquier tipo

A las constantes se les debe asignar valor al construir el objeto y a las variables no
3.
Pregunta 3
Elige 3 afirmaciones que sean verdaderas:
0 / 1 punto

Las variables generalmente las nombras con sustantivos


Correcto
😊 También esta es una regla de educación a la que el lenguaje no obliga. Ya sea que estés nombrando objetos o tipos
primitivos, estás hablando de ‘’cosas’’ y, por lo tanto, se usan sustantivos.
Los métodos generalmente los nombras con verbos imperativos

Las constantes las identificas por estar escritas sólo con verbos

Los únicos identificadores que empiezan con mayúscula son los de las constantes
Esto no debería estar seleccionado
☹ Los identificadores para las constantes deberían consistir únicamente de mayúsculas y guiones bajos. Los
identificadores de clases e interfaces deberían empezar con mayúscula. Esta es una regla que Java no vigila, sino que es de
educación.

La única regla obligatoria para los identificadores es la que dice que pueden contener letras, números, guion bajo y signo
de pesos; deben empezar con letra o guion bajo.
Correcto
😊 Para Java es lo mismo que a una constante que llamas VEINTE valga 10, -5 o 25. Simplemente te pide que no uses el
mismo identificador para valores distintos.
4.
Pregunta 4
Identifica las diferencias entre los distintos tipos enteros de Java, además del nombre de su tipo. Elige 2 opciones que
consideres correctas.
0 / 1 punto

El tamaño que usa cada uno, va de mayor a menor en el orden en que están listados
Correcto
😊 Si te fijas en la tabla donde están descritos los tipos primitivos correspondientes a números, verás que el número de
bits que se usan para su representación va de mayor a menor. El rango de un entero depende de cuántos bits usas para su
representación.

El identificador que usas para nombrarlos


Esto no debería estar seleccionado
☹ Como viste en el video y la pregunta anterior, la mayoría de las reglas para crear identificadores son una sugerencia o
convención, no son obligatorias.

Los valores que se pueden representar en cada uno de ellos

Las operaciones que se pueden hacer con cada uno de ellos


5.
Pregunta 5
¿Cuál de los siguientes no es un tipo primitivo?
1 / 1 punto

char

double

boolean

String (cadena de caracteres)

long
Correcto
😊 En efecto, éste no es un tipo primitivo pues está formado por caracteres y cada uno puede ser usado
independientemente del resto de la cadena.
6.
Pregunta 6
Elige 3 opciones que sean números reales:
1 / 1 punto

0.0001
Correcto
😊 Este es un número real sin parte entera, pero lo que importa es que tenga parte decimal. Se va a representar como un
número real en la computadora.

3.141594 (aproximación de lo que se conoce como Pi)


Correcto
😊 No hay forma de representar al número Pi en la computadora pues se sospecha que los dígitos a la derecha del punto
decimal no terminan nunca. Pero como con la mayoría de los números reales, podemos representar una aproximación
satisfactoria en un double.

20017

43210987

7.0
Correcto
😊 Este es un número real pues tiene una parte fraccionaria, aunque esta parte valga 0. Su representación interna en la
computadora es la de un número real.
7.
Pregunta 7
Elige la opción que complete el enunciado: Una variable que es una referencia es aquella que contiene:
0 / 1 punto

Un entero

Una dirección de memoria donde está la variable

Un valor del mismo tipo que la variable

Una dirección de memoria en la que está el objeto al que se refiere la variable


Incorrecto
☹ La variable se encuentra en donde esté declarada, pero no contiene su propia dirección, pues eso no ayudaría en nada a
la ejecución.
8.
Pregunta 8
Elige la opción que complete el enunciado: Como para el tipo de disco sólo tenemos tres posibles valores (1, 2 o 3) el tipo
más pequeño que podíamos usar es:
0 / 1 punto

byte

float
long

short

int
Incorrecto
☹ Aunque su rango es más pequeño que el de los enteros, también tiene muchísimos valores que no vamos a usar.
9.
Pregunta 9
Elige 2 opciones que sean verdaderas respecto a un atributo (o identificador) con el modificador static:
0 / 1 punto

Termina de existir cuando termina de ejecutarse la clase

Existe desde que se construye un objeto de esa clase

Sólo existe para los objetos de esa clase


Esto no debería estar seleccionado
☹ Eso no depende del modificador static sino del acceso que se le haya dado al atributo. Si es de acceso public entonces
cualquier objeto de cualquier clase puede usar ese atributo.

Es el mismo objeto o valor para todos los objetos de la clase

Existe desde que se compila la clase


Correcto
😊 Como pertenece a la clase, en el momento en que existe una versión compilada de la clase se pueden usar sus atributos
static desde cualquier objeto de cualquier otra clase.
10.
Pregunta 10
Elige 2 opciones que explican por qué se declararon el nombre, el año de grabación y el tipo de disco con el modificador
final
0 / 1 punto

Porque esos atributos tienen el mismo valor para todos los objetos
Esto no debería estar seleccionado
☹ Eso sería si los atributos tuviesen el modificador static. El modificador final se refiere a que el valor es una constante.

Porque esos atributos son constantes de objeto

Porque su valor no debe cambiar una vez ‘’grabado’’ (construido) el disco


Correcto
😊 En efecto, una vez ‘’grabado’’ (o construido) el disco, no se debe poder cambiar el valor de estos atributos.

Porque esos atributos toman su valor durante la construcción de cada objeto

Porque es el valor que van a tomar esos atributos al terminar la ejecución


Atributos y métodos de una clase
Puntos totales de 9
1.
Pregunta 1
Elige 3 opciones que describen lo que es un método.
1 punto
Algo que debe recordar un objeto
Una característica del objeto
Una función propia
Un servicio que proporciona el objeto
Una responsabilidad de la clase
2.
Pregunta 2
Elige 2 opciones que sean verdaderas respecto al constructor por omisión (por ausencia, por default) de Java, que no tiene
ningún parámetro:
1 punto
Está disponible siempre que no declares un constructor sin parámetros
Siempre está disponible
En el caso de los discos, el constructor por omisión pondría una cadena nula en el nombre, lo cual no es conveniente
Sólo está disponible si no declaras ningún otro constructor
3.
Pregunta 3
Elige la opción que complete el enunciado: En la definición de un método llamamos parámetro a:
1 punto
Todas las salidas que tiene definido el método
Cada valor que recibe el método como entrada
El valor que regresa el método
El tipo de valor que tiene el método como salida
4.
Pregunta 4
Elige la opción que complete el siguiente enunciado:
En el caso de la clase Disco, el constructor sin parámetros que vas a declarar:
1 punto
Le va a pedir al usuario los valores de las constantes de objeto, del atributo que registra las transmisiones permitidas y
del atributo que registra las transmisiones activas
Le va a pedir al usuario los valores de las constantes de objeto y del atributo que registra las transmisiones permitidas
Pone en ceros todos los campos numéricos y en nulo todos los campos de referencia
Va a tomar de la entrada del método los valores para los atributos constantes del objeto
5.
Pregunta 5
Elige 2 opciones que respondan a la siguiente afirmación:
El método daTransmision no tiene como entrada el disco al que se le pide la transmisión porque:
1 punto
Todos los métodos de una clase tienen implícito (oculto) un primer parámetro que se refiere a this, el objeto desde el
cual está siendo llamado el método (el objeto que recibe este mensaje)
Se aplica a todos los discos construidos con transmisiones permitidas distintas de cero
Se refiere a todos los objetos construidos hasta ese momento
Cuando sea invocado en ejecución, se le pedirá a un objeto particular de esta clase
6.
Pregunta 6
De los métodos que se enunciaron en la tarjeta de responsabilidades, elige 4 opciones que entregan como resultado un
mensaje o descripción del objeto.
1 punto
setNOMBRE
terminaTransmision
daTransmision
toString
muestraDisco
getNOMBRE
copiaDisco
7.
Pregunta 7
Elige 2 opciones que sean verdaderas:
1 punto
Todos los métodos sólo pueden tener un único tipo como salida
Todos los métodos sólo pueden tener un único tipo como entrada
Si el método no entrega ninguna salida se usa el tipo void para indicarlo
Si el método no recibe ninguna entrada se usa el tipo void para indicarlo
8.
Pregunta 8
Elige la opción que responda a la siguiente afirmación:
La tarjeta de comunicación para cada clase indica:
1 punto
Qué valores recibe y entrega la clase
Quién esperas que pueda usar directamente cada atributo y método del objeto
Quién va a conocer a la clase
Cómo se van a comunicar con el método main del usuario
9.
Pregunta 9
Elige la opción que responda a la siguiente afirmación:
Las variables y métodos declarados en una clase como static se almacenan en:
1 punto
Memoria auxiliar
Memoria para la pila de ejecución
Memoria para el heap
Memoria de código
Caso de estudio
Puntos totales de 3
1. Lee el siguiente caso:
Tenemos una empresa de paquetería que recibe paquetes con cierto contenido y un peso determinado. Cada paquete dice
la distancia a recorrer para entregar el paquete y la persona que lo va a recibir. El costo de entregar un paquete es una
función del peso y la distancia, la misma para todos los paquetes. A cada paquete recibido se le pone un sello con la hora a
la que se recibió y un sello distinto cuando el paquete es enviado para su entrega, también con la fecha y hora, y la
persona que lo va a recibir. Las fechas y horas se toman de un reloj que tiene la empresa y que usan todos los paquetes. Al
recibir un paquete, la empresa le avisa al destinatario cuánto va a costar la entrega. Cuando el paquete es entregado, se le
pone otro sello al paquete con la fecha y hora de entrega.
Elige 3 opciones correctas. ¿Cuáles de los siguientes sustantivos pueden ser de tipo primitivo (número, booleano o
carácter)?
paquete distancia
contenido sello
peso costo
destinatario
2. Vas a diseñar una clase para los sellos. Elige 5 opciones que respondan la siguiente pregunta: ¿Cuáles de los atributos
primitivos estarían en los objetos de esa clase?
año minuto del día
día del mes hora del día (24 horas)
tipo de sello (recibido, enviado, entregado) reloj
fecha mes
3. Si quisieras que el contenido del paquete pudiese estar representado por un número, suponiendo que tienes 1,000,000
de artículos posibles, ¿cuál de los tipos primitivos para números sería el más adecuado?
byte
int
float
double
short
long

1. Instrucciones
Las siguientes preguntas aplican a una clase Registro que tiene la tarjeta de responsabilidades con los siguientes atributos:
Acceso Identif Tipo Descripción
Privado Hora byte El número de hora entre 0 y 23.
Privado Minuto short Minutos transcurridos entre 0 y 59.
Privado Anho int Número de año de 4 dígitos.
Privado diaAnho short El número de día entre 1 y 365
Review criteria
Dada la descripción, llena las columnas con las palabras de Java que faltan para las tablas de responsabilidades de los
siguientes métodos:
Descarga el siguiente archivo para que puedas llevar a cabo la actividad.
1.
Pregunta 1
Elige 3 opciones que describen lo que es un método.
0 / 1 punto

Algo que debe recordar un objeto


Esto no debería estar seleccionado
☹ Esto es lo que llamamos atributo, por lo que no debería estar marcado.

Una característica del objeto


Esto no debería estar seleccionado
☹ Esto es lo que llamamos atributo, por lo que no debería estar marcado.

Una función propia


Correcto
😊 Otro nombre que damos a los métodos definidos en una clase es el de función propia, donde el adjetivo ‘’propia’’ es el
que indica que pertenece a la clase.

Un servicio que proporciona el objeto

Una responsabilidad de la clase


2.
Pregunta 2
Elige 2 opciones que sean verdaderas respecto al constructor por omisión (por ausencia, por default) de Java, que no tiene
ningún parámetro:
0 / 1 punto

Está disponible siempre que no declares un constructor sin parámetros


Esto no debería estar seleccionado
☹ Este inciso no debería ser el elegido, porque cualquier otro constructor, tenga o no parámetros, bloquea al constructor
por omisión de Java.

Siempre está disponible

En el caso de los discos, el constructor por omisión pondría una cadena nula en el nombre, lo cual no es conveniente
Correcto
😊 Si todos los discos que construyes tienen una cadena nula en el nombre, cero en el año de grabación y cero como tipo
de disco, todos son iguales y no tienes manera de distinguir a uno del otro. Como estos tres atributos son constantes de
objeto, no tendrías forma de cambiarles el valor después.

Sólo está disponible si no declaras ningún otro constructor


3.
Pregunta 3
Elige la opción que complete el enunciado: En la definición de un método llamamos parámetro a:
0 / 1 punto

Todas las salidas que tiene definido el método

Cada valor que recibe el método como entrada

El valor que regresa el método


El tipo de valor que tiene el método como salida
Incorrecto
☹ Esto es el tipo de valor que regresa el método, no que recibe.
4.
Pregunta 4
Elige la opción que complete el siguiente enunciado:
En el caso de la clase Disco, el constructor sin parámetros que vas a declarar:
0 / 1 punto

Le va a pedir al usuario los valores de las constantes de objeto, del atributo que registra las transmisiones permitidas y del
atributo que registra las transmisiones activas

Le va a pedir al usuario los valores de las constantes de objeto y del atributo que registra las transmisiones permitidas

Pone en ceros todos los campos numéricos y en nulo todos los campos de referencia

Va a tomar de la entrada del método los valores para los atributos constantes del objeto
Incorrecto
☹ El número de transmisiones activas debería cambiar únicamente cuando se piden transmisiones o se terminan
transmisiones del disco en cuestión. No es conveniente asignar este valor en la construcción, ya que debe empezar en
cero.
5.
Pregunta 5
Elige 2 opciones que respondan a la siguiente afirmación:
El método daTransmision no tiene como entrada el disco al que se le pide la transmisión porque:
0 / 1 punto

Todos los métodos de una clase tienen implícito (oculto) un primer parámetro que se refiere a this, el objeto desde el cual
está siendo llamado el método (el objeto que recibe este mensaje)
Correcto
😊 Así es. This se refiere siempre, dentro de un método, al objeto al que se le pidió este servicio. No se puede pedir la
ejecución de ningún método si no es a un objeto particular construido.

Se aplica a todos los discos construidos con transmisiones permitidas distintas de cero
Esto no debería estar seleccionado
☹ Ningún método puede aplicarse a un conjunto de objetos pues la sintaxis obliga a llamar al método desde un objeto
particular.

Se refiere a todos los objetos construidos hasta ese momento

Cuando sea invocado en ejecución, se le pedirá a un objeto particular de esta clase


6.
Pregunta 6
De los métodos que se enunciaron en la tarjeta de responsabilidades, elige 4 opciones que entregan como resultado un
mensaje o descripción del objeto.
0 / 1 punto

setNOMBRE

terminaTransmision
Esto no debería estar seleccionado
☹ Simplemente avisa falso o verdadero de si el disco al que se le solicitó terminar la transmisión tenía transmisiones
activas (true) o no las tenía (false), en cuyo caso no había transmisiones que terminar.

daTransmision
Correcto
😊 En la columna para la salida y en la descripción del método dice que regresa una cadena de caracteres, que es un
mensaje que indica si pudo dar la transmisión con la hora y fecha, y si no pudo dar la transmisión con un mensaje alusivo
a este hecho.

toString
Correcto
😊 Es un método que da una descripción, en una cadena o String, del objeto con el que se le invoca. Si no se implementa
en tu clase, versiones anteriores de Java regresaban la dirección de memoria en la que está almacenado el objeto.

muestraDisco
Correcto
😊 Regresa una cadena que contiene toda la información del disco al que se pidió este servicio.

getNOMBRE

copiaDisco
7.
Pregunta 7
Elige 2 opciones que sean verdaderas:
0 / 1 punto

Todos los métodos sólo pueden tener un único tipo como salida

Todos los métodos sólo pueden tener un único tipo como entrada

Si el método no entrega ninguna salida se usa el tipo void para indicarlo


Correcto
😊 Esta es la forma como Java indica que el método no va a dar ningún resultado, lo que no quiere decir que no vaya a
hacer algo.

Si el método no recibe ninguna entrada se usa el tipo void para indicarlo


Esto no debería estar seleccionado
☹ void únicamente se usa para indicar la salida. Todo parámetro o entrada debe ser de algún tipo definido que, por
supuesto, no puede ser void.
8.
Pregunta 8
Elige la opción que responda a la siguiente afirmación:
La tarjeta de comunicación para cada clase indica:
1 / 1 punto

Qué valores recibe y entrega la clase

Quién esperas que pueda usar directamente cada atributo y método del objeto

Quién va a conocer a la clase


Cómo se van a comunicar con el método main del usuario
Correcto
😊 Cuando decides quién puede o no ver atributos y métodos es cuando puedes asignar el acceso. Los atributos, en
general, sólo deben poder manipularse desde dentro del objeto, por lo que son de acceso private, mientras que los
métodos listados en la tarjeta de responsabilidades, dado que son servicios que debe proveer el objeto, deben ser public o
de paquete (sin anotación para el acceso).
9.
Pregunta 9
Elige la opción que responda a la siguiente afirmación:
Las variables y métodos declarados en una clase como static se almacenan en:
1 / 1 punto

Memoria auxiliar

Memoria para la pila de ejecución

Memoria para el heap

Memoria de código
Correcto
😊 La Máquina Virtual de Java reparte la memoria en tres partes: En la que deposita el código compilado de las clases que
va a usar; en la que va siguiendo la ejecución de main, para lo que usa una pila; y, por último, en la que va guardando los
objetos que se van construyendo y que se llama heap (cuya traducción literal es montículo, pero es una estructura de datos
particular en programación).
1.
Pregunta 1

Elige 3 opciones que describen lo que es un método.

0 / 1 punto

Algo que debe recordar un objeto

Esto no debería estar seleccionado

☹ Esto es lo que llamamos atributo, por lo que no debería estar marcado.

Una característica del objeto

Esto no debería estar seleccionado

☹ Esto es lo que llamamos atributo, por lo que no debería estar marcado.

Una función propia


Correcto

😊 Otro nombre que damos a los métodos definidos en una clase es el de función propia, donde el adjetivo
‘’propia’’ es el que indica que pertenece a la clase.

Un servicio que proporciona el objeto

Una responsabilidad de la clase

2.
Pregunta 2

Elige 2 opciones que sean verdaderas respecto al constructor por omisión (por ausencia, por default) de Java,
que no tiene ningún parámetro:

0 / 1 punto

Está disponible siempre que no declares un constructor sin parámetros

Esto no debería estar seleccionado

☹ Este inciso no debería ser el elegido, porque cualquier otro constructor, tenga o no parámetros, bloquea al
constructor por omisión de Java.

Siempre está disponible

En el caso de los discos, el constructor por omisión pondría una cadena nula en el nombre, lo cual no es
conveniente

Correcto

😊 Si todos los discos que construyes tienen una cadena nula en el nombre, cero en el año de grabación y cero
como tipo de disco, todos son iguales y no tienes manera de distinguir a uno del otro. Como estos tres atributos
son constantes de objeto, no tendrías forma de cambiarles el valor después.

Sólo está disponible si no declaras ningún otro constructor

3.
Pregunta 3

Elige la opción que complete el enunciado: En la definición de un método llamamos parámetro a:

0 / 1 punto

Todas las salidas que tiene definido el método

Cada valor que recibe el método como entrada

El valor que regresa el método

El tipo de valor que tiene el método como salida

Incorrecto

☹ Esto es el tipo de valor que regresa el método, no que recibe.

4.
Pregunta 4

Elige la opción que complete el siguiente enunciado:

En el caso de la clase Disco, el constructor sin parámetros que vas a declarar:

0 / 1 punto

Le va a pedir al usuario los valores de las constantes de objeto, del atributo que registra las transmisiones
permitidas y del atributo que registra las transmisiones activas

Le va a pedir al usuario los valores de las constantes de objeto y del atributo que registra las transmisiones
permitidas

Pone en ceros todos los campos numéricos y en nulo todos los campos de referencia
Va a tomar de la entrada del método los valores para los atributos constantes del objeto

Incorrecto

☹ El número de transmisiones activas debería cambiar únicamente cuando se piden transmisiones o se terminan
transmisiones del disco en cuestión. No es conveniente asignar este valor en la construcción, ya que debe
empezar en cero.

5.
Pregunta 5

Elige 2 opciones que respondan a la siguiente afirmación:

El método daTransmision no tiene como entrada el disco al que se le pide la transmisión porque:

0 / 1 punto

Todos los métodos de una clase tienen implícito (oculto) un primer parámetro que se refiere a this, el objeto
desde el cual está siendo llamado el método (el objeto que recibe este mensaje)

Correcto

😊 Así es. This se refiere siempre, dentro de un método, al objeto al que se le pidió este servicio. No se puede
pedir la ejecución de ningún método si no es a un objeto particular construido.

Se aplica a todos los discos construidos con transmisiones permitidas distintas de cero

Esto no debería estar seleccionado

☹ Ningún método puede aplicarse a un conjunto de objetos pues la sintaxis obliga a llamar al método desde un
objeto particular.

Se refiere a todos los objetos construidos hasta ese momento

Cuando sea invocado en ejecución, se le pedirá a un objeto particular de esta clase

6.
Pregunta 6

De los métodos que se enunciaron en la tarjeta de responsabilidades, elige 4 opciones que entregan como
resultado un mensaje o descripción del objeto.

0 / 1 punto
setNOMBRE

terminaTransmision

Esto no debería estar seleccionado

☹ Simplemente avisa falso o verdadero de si el disco al que se le solicitó terminar la transmisión tenía
transmisiones activas (true) o no las tenía (false), en cuyo caso no había transmisiones que terminar.

daTransmision

Correcto

😊 En la columna para la salida y en la descripción del método dice que regresa una cadena de caracteres, que
es un mensaje que indica si pudo dar la transmisión con la hora y fecha, y si no pudo dar la transmisión con un
mensaje alusivo a este hecho.

toString

Correcto

😊 Es un método que da una descripción, en una cadena o String, del objeto con el que se le invoca. Si no se
implementa en tu clase, versiones anteriores de Java regresaban la dirección de memoria en la que está
almacenado el objeto.

muestraDisco

Correcto

😊 Regresa una cadena que contiene toda la información del disco al que se pidió este servicio.

getNOMBRE

copiaDisco
7.
Pregunta 7

Elige 2 opciones que sean verdaderas:

0 / 1 punto

Todos los métodos sólo pueden tener un único tipo como salida

Todos los métodos sólo pueden tener un único tipo como entrada

Si el método no entrega ninguna salida se usa el tipo void para indicarlo

Correcto

😊 Esta es la forma como Java indica que el método no va a dar ningún resultado, lo que no quiere decir que no
vaya a hacer algo.

Si el método no recibe ninguna entrada se usa el tipo void para indicarlo

Esto no debería estar seleccionado

☹ void únicamente se usa para indicar la salida. Todo parámetro o entrada debe ser de algún tipo definido que,
por supuesto, no puede ser void.

8.
Pregunta 8

Elige la opción que responda a la siguiente afirmación:

La tarjeta de comunicación para cada clase indica:

1 / 1 punto

Qué valores recibe y entrega la clase

Quién esperas que pueda usar directamente cada atributo y método del objeto
Quién va a conocer a la clase

Cómo se van a comunicar con el método main del usuario

Correcto

😊 Cuando decides quién puede o no ver atributos y métodos es cuando puedes asignar el acceso. Los atributos,
en general, sólo deben poder manipularse desde dentro del objeto, por lo que son de acceso private, mientras
que los métodos listados en la tarjeta de responsabilidades, dado que son servicios que debe proveer el objeto,
deben ser public o de paquete (sin anotación para el acceso).

9.
Pregunta 9

Elige la opción que responda a la siguiente afirmación:

Las variables y métodos declarados en una clase como static se almacenan en:

1 / 1 punto

Memoria auxiliar

Memoria para la pila de ejecución

Memoria para el heap

Memoria de código

Correcto

😊 La Máquina Virtual de Java reparte la memoria en tres partes: En la que deposita el código compilado de las
clases que va a usar; en la que va siguiendo la ejecución de main, para lo que usa una pila; y, por último, en la
que va guardando los objetos que se van construyendo y que se llama heap (cuya traducción literal es
montículo, pero es una estructura de datos particular en programación).

1.
Pregunta 1
Lee el siguiente caso:
Tenemos una empresa de paquetería que recibe paquetes con cierto contenido y un peso determinado. Cada paquete dice
la distancia a recorrer para entregar el paquete y la persona que lo va a recibir. El costo de entregar un paquete es una
función del peso y la distancia, la misma para todos los paquetes. A cada paquete recibido se le pone un sello con la hora a
la que se recibió y un sello distinto cuando el paquete es enviado para su entrega, también con la fecha y hora, y la
persona que lo va a recibir. Las fechas y horas se toman de un reloj que tiene la empresa y que usan todos los paquetes. Al
recibir un paquete, la empresa le avisa al destinatario cuánto va a costar la entrega. Cuando el paquete es entregado, se le
pone otro sello al paquete con la fecha y hora de entrega.
Elige 3 opciones correctas. ¿Cuáles de los siguientes sustantivos pueden ser de tipo primitivo (número, booleano o
carácter)?
0 / 1 punto

paquete
Esto no debería estar seleccionado
☹ Un paquete no es un tipo primitivo pues contiene varios campos como cada uno de los tres sellos, el peso, la distancia
del destinatario y el destinatario del paquete. Toda esta información.

contenido
Esto no debería estar seleccionado
☹ El contenido puede estar descrito por una cadena (String), que no es un tipo primitivo porque se puede subdividir en
caracteres.

peso
Correcto
😊 El peso puede representarse con un número real, que es de tipo primitivo.

destinatario
Esto no debería estar seleccionado
☹ El destinatario puede representarse con una cadena, que no es un tipo primitivo.

distancia
Correcto
😊 La distancia puede representarse como un número real, que es un tipo primitivo.

sello
Esto no debería estar seleccionado
☹ El sello contiene varios datos primitivos: el número de día, número de mes y número de año, la hora y los minutos.
Aunque todos estos campos son de tipo primitivo, todos enteros, tienen que trabajar todos juntos y cada uno de ellos
representa a un atributo distinto dentro de los objetos de tipo sello.

costo
Correcto
😊 El costo puede estar representado por un número real. La orientación a objetos, sin embargo, nos dice que no
guardemos como atributo un valor que se puede calcular a partir de otros atributos de un objeto.
2.
Pregunta 2
Vas a diseñar una clase para los sellos. Elige 5 opciones que respondan la siguiente pregunta: ¿Cuáles de los atributos
primitivos estarían en los objetos de esa clase?
0 / 1 punto

año
Correcto
😊 Es un tipo primitivo que podrá tomar un valor entre 1900 y 2999 (aunque un límite más realista sería 2099).

día del mes


tipo de sello (recibido, enviado, entregado)
Esto no debería estar seleccionado
☹ El tipo de sello podría ser un atributo, pero estará dado en la clase paquete, declarando los tres tipos de sellos y
poniéndolos como nulos al crear el paquete.

fecha
Esto no debería estar seleccionado
☹ Claramente no es un tipo primitivo pues puede subdividirse en día, mes y año.

minuto del día

hora del día (24 horas)

reloj
Esto no debería estar seleccionado
☹ Claramente no es un tipo primitivo, pues puede subdividirse en fecha y hora cuando menos.

mes
Correcto
😊 Podemos usar un entero cuyo valor sea entre 1 y 12 para indicar el número de mes, por lo que es un tipo primitivo. No
tiene sentido usar una cadena porque va a ser difícil calcular el tiempo transcurrido entre dos meses.
3.
Pregunta 3
Si quisieras que el contenido del paquete pudiese estar representado por un número, suponiendo que tienes 1,000,000 de
artículos posibles, ¿cuál de los tipos primitivos para números sería el más adecuado?
1 / 1 punto

byte

int

float

double

short

long
Correcto
😊 Los números de este tipo tienen aproximadamente 10 cifras decimales enteras; aunque únicamente requieres 7, el
siguiente tipo entero no alcanza para guardar 1,000,000 de claves.
Compilación y ejecución en DrJava
Puntos totales de 6
1. Elige 2 opciones que representen ambiente de desarrollo integrado: 1 punto
Un editor para producir documentos
Un programa que te muestra texto
El que te permite ver películas y vídeos
El programa que maneja hojas de cálculo electrónicas
El manejador de archivos de un sistema operativo
2. Selecciona la descripción de lo que es un package de Java: 1 punto
Un archivo específico que contiene varias clases
Una colección de archivos que se guardan en algún subdirectorio de Java
Una colección de archivos que se guardan en un subdirectorio con el nombre del package
La dirección de una liga (link) en la computadora
El nombre de la computadora en la que estás ejecutando DrJava
3. Elige 2 opciones que respondan a la siguiente afirmación:
Como las interfaces son contratos que anuncian servicios, tienen que tener alguno de los siguientes accesos:
1 punto
público
paquete
privado
protegido
4. Elige la opción que responda a la siguiente afirmación:
El nombre del archivo donde está declarada la interfaz con identificador NuestraInterfaz, debe ser:
1 punto
[Link]
[Link]
[Link]
[Link]
5. Elige la opción que responda a la siguiente afirmación: El comentario de escape de línea se llama así porque:
Empiezan con // y ya no se pone nada en esa línea
Ocupan una línea exactamente y todo lo que esté en esa línea es comentario
Una vez que aparece // lo que sigue en la misma línea escapa del compilador de Java
Empiezan con /* y terminan con un cambio de línea
6. Elige la opción que responda a la siguiente afirmación: La razón por la que una interfaz no tiene definidos constructores
es la siguiente:
Usa siempre el constructor por omisión que proporciona Java
Lista los atributos, pero no dice cómo se usan ni para qué sirven
Sólo lista servicios, sin decir qué clase los va a proporcionar o cuáles son los atributos que necesita
Cuando lista los servicios o métodos no da ni las entradas ni las salidas de cada método

Compilación y ejecución en DrJava


Puntos totales de 6
[Link] 2 opciones que representen ambiente de desarrollo integrado: 0 / 1 punto
Un editor para producir documentos
Correcto
😊 Este sí es un ambiente de desarrollo integrado pensado para producir documentos y publicarlos. Les da formato, te
marca errores de ortografía o de composición, puede editarlos, guardarlos y muchas acciones más.
Un programa que te muestra texto
Esto no debería estar seleccionado
☹ No tienes acceso a las partes de edición y composición de tus documentos, sino únicamente a verlos, por lo que no
constituyen un ambiente de desarrollo integrado.
El que te permite ver películas y vídeos
El programa que maneja hojas de cálculo electrónicas
El manejador de archivos de un sistema operativo
2. Selecciona la descripción de lo que es un package de Java: 0 / 1 punto
Un archivo específico que contiene varias clases
Una colección de archivos que se guardan en algún subdirectorio de Java
Una colección de archivos que se guardan en un subdirectorio con el nombre del package
La dirección de una liga (link) en la computadora
El nombre de la computadora en la que estás ejecutando DrJava
Incorrecto
☹ En los subdirectorios de Java se encuentran clases y paquetes relacionados con la compilación y la ejecución de clases
escritas en Java, o lo que se llaman las bibliotecas (libraries) del lenguaje Java, no de un proyecto particular.
3. Elige 2 opciones que respondan a la siguiente afirmación:
Como las interfaces son contratos que anuncian servicios, tienen que tener alguno de los siguientes accesos:
1 / 1 punto

público
Correcto
😊 Como hablamos de que una interfaz anuncia servicios, tiene que hacerlo públicamente, a todo el mundo.

paquete
Correcto
😊 Puede restringir su anuncio a los miembros de su propio paquete, pero debe anunciarlo.

privado

protegido
4.
Elige la opción que responda a la siguiente afirmación:
El nombre del archivo donde está declarada la interfaz con identificador NuestraInterfaz, debe ser:
1 / 1 punto
[Link]
[Link]
[Link]
[Link]
Correcto
😊 Como la interfaz se llama NuestraInterfaz, DrJava guarda el archivo con este nombre y le pone la terminación .java.
5. Elige la opción que responda a la siguiente afirmación:
El comentario de escape de línea se llama así porque:
0 / 1 punto
Empiezan con // y ya no se pone nada en esa línea
Ocupan una línea exactamente y todo lo que esté en esa línea es comentario
Una vez que aparece // lo que sigue en la misma línea escapa del compilador de Java
Empiezan con /* y terminan con un cambio de línea
Incorrecto
☹ Dado que su alcance es hasta el fin de línea, no tiene sentido que inicies un comentario de escape de línea y luego no
escribas el comentario.
6. Elige la opción que responda a la siguiente afirmación: La razón por la que una interfaz no tiene definidos constructores
es la siguiente:
0 / 1 punto
Usa siempre el constructor por omisión que proporciona Java
Lista los atributos, pero no dice cómo se usan ni para qué sirven
Sólo lista servicios, sin decir qué clase los va a proporcionar o cuáles son los atributos que necesita
Cuando lista los servicios o métodos no da ni las entradas ni las salidas de cada método
Incorrecto
☹ Una interfaz juega el papel de un contrato para construir una obra, por ejemplo. El contrato por sí mismo no puede
hacer la construcción y no tiene acceso al constructor por omisión de Java. Se pueden declarar objetos con el identificador
de la interfaz, pero las referencias tienen que ser a objetos de alguna clase que la implemente (cumpla con el contrato).

¡Felicitaciones! ¡Aprobaste! Para Aprobar 80 % o más


Calificación 100 %
Compilación y ejecución en DrJava
Puntos totales de 6
1. Elige 2 opciones que representen ambiente de desarrollo integrado: 1 / 1 punto
El que te permite ver películas y vídeos
El programa que maneja hojas de cálculo electrónicas
Correcto
😊 Este tipo de programas puede ser considerado un ambiente de desarrollo integrado pues permite la edición,
combinación y elaboración de bases de datos (particulares), con la posibilidad de programar las hojas de cálculo.
Un programa que te muestra texto
El manejador de archivos de un sistema operativo
Un editor para producir documentos
Correcto
😊 Este sí es un ambiente de desarrollo integrado pensado para producir documentos y publicarlos. Les da formato, te
marca errores de ortografía o de composición, puede editarlos, guardarlos y muchas acciones más.
2. Selecciona la descripción de lo que es un package de Java: 1 / 1 punto
Un archivo específico que contiene varias clases
Una colección de archivos que se guardan en algún subdirectorio de Java
Una colección de archivos que se guardan en un subdirectorio con el nombre del package
La dirección de una liga (link) en la computadora
El nombre de la computadora en la que estás ejecutando DrJava
Correcto
😊 En efecto, un paquete (o package) de Java corresponde a un subdirectorio donde vas a guardar todas las clases e
interfaces relacionadas con tu proyecto, y muchas veces también los datos.
3. Elige 2 opciones que respondan a la siguiente afirmación:
Como las interfaces son contratos que anuncian servicios, tienen que tener alguno de los siguientes accesos:
1 / 1 punto
público
Correcto
😊 Como hablamos de que una interfaz anuncia servicios, tiene que hacerlo públicamente, a todo el mundo.
paquete
Correcto
😊 Puede restringir su anuncio a los miembros de su propio paquete, pero debe anunciarlo.
privado
protegido
4. Elige la opción que responda a la siguiente afirmación:
El nombre del archivo donde está declarada la interfaz con identificador NuestraInterfaz, debe ser:
1 / 1 punto
[Link]
[Link]
[Link]
[Link]
Correcto
😊 Como la interfaz se llama NuestraInterfaz, DrJava guarda el archivo con este nombre y le pone la terminación .java.
5. Elige la opción que responda a la siguiente afirmación:
El comentario de escape de línea se llama así porque: 1 / 1 punto
Ocupan una línea exactamente y todo lo que esté en esa línea es comentario
Una vez que aparece // lo que sigue en la misma línea escapa del compilador de Java
Empiezan con /* y terminan con un cambio de línea
Empiezan con // y ya no se pone nada en esa línea
Correcto
😊 Correcto. Dondequiera que aparezca, lo que está después que las dos diagonales y hasta el cambio de línea ( return) no
es tomado en cuenta por el compilador de Java.
6. Elige la opción que responda a la siguiente afirmación: La razón por la que una interfaz no tiene definidos constructores
es la siguiente: 1 / 1 punto
Usa siempre el constructor por omisión que proporciona Java
Lista los atributos, pero no dice cómo se usan ni para qué sirven
Sólo lista servicios, sin decir qué clase los va a proporcionar o cuáles son los atributos que necesita
Cuando lista los servicios o métodos no da ni las entradas ni las salidas de cada método
Correcto
😊 Puede haber muchas clases distintas y, por lo tanto, objetos con distintos atributos que implementen a una interfaz, por
lo que no se pueden construir objetos de una interfaz y no tiene sentido tener constructores.

Métodos: entradas (parámetros) y salidas


Puntos totales de 10
1. Elige 2 opciones que expliquen que un método sea “introspectivo”. 0 / 1 punto
Toma algunos de los valores que necesita del objeto con el que es invocado
Sólo los métodos get son introspectivos
Esto no debería estar seleccionado
☹ El método toString es introspectivo, no recibe entradas y da una salida, que es una cadena.
No requiere de datos de entrada
Esto no debería estar seleccionado
☹ Que el método no tenga entradas no quiere decir que use valores del objeto con el que se le invocó; por ejemplo, un
método que siempre escribe “Hola mundo”, no recibe nada como entrada, pero no usa ningún valor interno.
El objeto se observa a sí mismo para poder dar el servicio
No entrega ningún valor de salida
2. Si el encabezado de un método en una interfaz es el siguiente:
1 public short getMarca ();
Elige la opción que responda a la siguiente afirmación: La clase tiene un atributo que se llama: 0 / 1 punto
getMarca Marca
getmarca marca
Incorrecto
☹ Los identificadores de atributos no empiezan con verbos.
3. Elige la opción que responda a la siguiente afirmación: El tipo del atributo es: 1 / 1 punto
byte long
short float
int
Correcto
😊 Si el método getMarca( ) regresa un valor de tipo short, quiere decir que el tipo del atributo es, ciertamente, short.
4. Elige la opción que responda a la siguiente afirmación: Los atributos, generalmente, tienen acceso: 0 / 1 punto
package private
public protected
Incorrecto
☹ Si el atributo tuviera acceso public podría verse su valor directamente, sin necesidad de método get.
5. Elige 2 opciones que respondan a la siguiente afirmación: No hay método que se llame setNOMBRE porque:
No puede cambiar una vez establecido su valor en el constructor
Correcto
😊 Como NOMBRE está declarado como constante de objeto (final), una vez asignado su valor en los constructores, este
valor ya no puede cambiar.
No puede cambiar una vez establecido su valor en la declaración
En la tarjeta de responsabilidades lo marcamos como constante de objeto
En la tarjeta de responsabilidades lo marcamos como constante de clase
No seleccionaste todas las respuestas correctas
6. Si hay 3 atributos de tipo int, de los cuáles 2 son constantes de objeto y privados; y dos de ellos atributos de tipo
double, de los cuáles ambos son de acceso privado y uno es una constante, ¿cuántos métodos get va a haber en la interfaz
de la clase (o en la clase)? Elige la opción correcta. 0 / 1 punto
2 4
3 5
Incorrecto
☹ En total son 5 variables de objeto de acceso privado, independientemente que sean constantes o no.
7. Elige 2 opciones que sean verdaderas. 0 / 1 punto
Los métodos de implementación que aparecen en una interfaz son de acceso público o de paquete
Los métodos de implementación siempre tienen al menos un parámetro
Esto no debería estar seleccionado
☹ Falso. Por ejemplo, los métodos daTransmision y terminaTransmision no tienen parámetros y son métodos de
implementación.
Los métodos de implementación siempre regresan algún valor
Esto no debería estar seleccionado
☹ Falso. Podemos tener un método que cambie más de un valor, pero que no regrese ninguno de ellos.
Los métodos de implementación son los que no son get ni set
8.
Pregunta 8
Tienes esta descripción de un método:
Es un método de clase, con acceso de paquete, que recibe como entrada dos números enteros y da como salida el
producto de dos enteros
¿Cuál de los siguientes encabezados corresponde a esta descripción?
1 static int daProducto (int a, int b);
1 public static final void getProducto ( int a, int b );
 1 public int multiplica(int a, int b);
1 public int daProducto (int a);

Incorrecto
☹ Esta línea de código no corresponde al texto por varias razones:
 El acceso es público y se pidió de paquete.
 Es un método de objeto, no de clase, porque no tiene el modificador static.
El valor que regresa, el nombre del método (que es un verbo imperativo) y los parámetros están bien.
9.
Pregunta 9
Queremos un encabezado de un método de objeto cuya descripción es:
Le das como entrada una cadena y da como resultado la concatenación de uno de sus atributos, que es también una
cadena, con la entrada. Es de acceso público
Elige el encabezado que codifique esta especificación.
1 public int pegados (String atributo);
1 public void pega(String entrada, String atributo);
 1 public String pegados (String una, String dos);
1 public String pegados (String una);

Incorrecto
☹ Tiene dos entradas que son cadenas y debiera recibir sólo una cadena.
10.
Pregunta 10
¿Cuál de los siguientes encabezados cumple con la siguiente definición?
Método público que imprime el mensaje que le pasan como parámetro.
1 public void imprime (String mensaje);
 1 public String impresión (Mensaje string);
1 public String imprimeMensaje ( );
1 public void muestraMensaje ( );
Incorrecto
☹ El método hace algo, no regresa nada. Además, no se dijo que exista un tipo (clase) llamada Mensaje.

¡Felicitaciones! ¡Aprobaste! Para Aprobar 80 % o más


Calificación 80 %
Métodos: entradas (parámetros) y salidas
Puntos totales de 10
1. Elige 2 opciones que expliquen que un método sea “introspectivo”. 1 / 1 punto
Toma algunos de los valores que necesita del objeto con el que es invocado
Correcto
😊 En efecto, un método es introspectivo si para cumplir con su responsabilidad tiene que ver el interior (los valores, el
estado) del objeto desde el cuál es llamado.
No entrega ningún valor de salida
No requiere de datos de entrada
El objeto se observa a sí mismo para poder dar el servicio
Correcto
😊 Se considera introspectivo a un servicio o método que tiene que conocer el estado del objeto con el que es invocado.
Sólo los métodos get son introspectivos
2. Si el encabezado de un método en una interfaz es el siguiente:
1 public short getMarca ( );
Elige la opción que responda a la siguiente afirmación: La clase tiene un atributo que se llama: 1 / 1 punto
getmarca
marca
Marca
getMarca
Correcto
😊 Los nombres de los atributos son sustantivos y empiezan con minúscula.
3. Elige la opción que responda a la siguiente afirmación: El tipo del atributo es: 1 / 1 punto
byte
short
int
long
float
Correcto
😊 Si el método getMarca( ) regresa un valor de tipo short, quiere decir que el tipo del atributo es, ciertamente, short.
4. Elige la opción que responda a la siguiente afirmación:
Los atributos, generalmente, tienen acceso:
0 / 1 punto
public
private
protected
package
Incorrecto
☹ Este acceso es por omisión, o sea que no tiene registrado o escrito ningún acceso. La palabra package no es palabra
reservada o clave de Java. Si no tuviera identificación de acceso (es decir, acceso de paquete) no se necesitaría un método
get para ver su valor, sino que se podría ver directamente.
5. Elige 2 opciones que respondan a la siguiente afirmación:
No hay método que se llame setNOMBRE porque: 1 / 1 punto
En la tarjeta de responsabilidades lo marcamos como constante de clase
No puede cambiar una vez establecido su valor en la declaración
No puede cambiar una vez establecido su valor en el constructor
Correcto
😊 Como NOMBRE está declarado como constante de objeto (final), una vez asignado su valor en los constructores, este
valor ya no puede cambiar.
En la tarjeta de responsabilidades lo marcamos como constante de objeto
Correcto
😊 En la tarjeta de responsabilidades pusimos al atributo NOMBRE es constante de objeto (final).
6. Si hay 3 atributos de tipo int, de los cuáles 2 son constantes de objeto y privados; y dos de ellos atributos de tipo
double, de los cuáles ambos son de acceso privado y uno es una constante, ¿cuántos métodos get va a haber en la interfaz
de la clase (o en la clase)? Elige la opción correcta. 1 / 1 punto
4
3
2
5
Correcto
😊 Son 5 variables declaradas de acceso privado, por lo que necesitamos 5 métodos get.
7. Elige 2 opciones que sean verdaderas. 1 / 1 punto
Los métodos de implementación siempre regresan algún valor
Los métodos de implementación son los que no son get ni set
Correcto
😊 Verdadero. Si fueran get o set estarían en uno de esos grupos no serían de implementación.
Los métodos de implementación siempre tienen al menos un parámetro
Los métodos de implementación que aparecen en una interfaz son de acceso público o de paquete
Correcto
😊 Verdadero. Para aparecer en una interfaz tienen que estar declarados como públicos o de paquete.
8. Tienes esta descripción de un método:
Es un método de clase, con acceso de paquete, que recibe como entrada dos números enteros y da como salida el
producto de dos enteros
¿Cuál de los siguientes encabezados corresponde a esta descripción?
 1 static int daProducto (int a, int b);
1 public static final void getProducto ( int a, int b );
1 public int multiplica(int a, int b);
1 public int daProducto (int a);

Correcto
😊 Este encabezado sí cumple con la descripción dada, porque:
 La ausencia de palabra clave para el acceso indica que tiene acceso de paquete.
 Es un método de clase, lo que se indica con la palabra reservada static.
 Regresa un entero, lo que se indica con int antes del nombre del método.
 Recibe dos enteros como parámetros.
El nombre está bien construido de acuerdo a las convenciones de Java.
9. Queremos un encabezado de un método de objeto cuya descripción es:
Le das como entrada una cadena y da como resultado la concatenación de uno de sus atributos, que es también una
cadena, con la entrada. Es de acceso público
Elige el encabezado que
1 public int pegados (String atributo);
 1 public void pega(String entrada, String atributo);
1 public String pegados (String una, String dos);
1 public String pegados (String una);

Incorrecto
☹ No regresa nada (void) y debiera regresar una cadena. Recibe una sola entrada. La cadena con la que la pega es un
atributo que el método conoce.
10. ¿Cuál de los siguientes encabezados cumple con la siguiente definición?
Método público que imprime el mensaje que le pasan como parámetro.
 1 public void imprime (String mensaje);
1 public String impresión (Mensaje string);
1 public String imprimeMensaje ( );
1 public void muestraMensaje ( );
Correcto
😊 Este encabezado es el que representa mejor a la descripción dada.

package discos;

/**
* Disco digital para su uso por una companhia de
* "streamming". Se usa como ejemplo introductorio a
* algunos aspectos de Java.
*
* @author Elisa Viso.
* @version 1.0, 09/11/15.
*/
public interface ServiciosDisco {

/**
* Proporciona el tipo del disco.
*
* @return el tipo de disco entre 1 y 3
*/
public short getTIPO_DISCO();

/**
* Proporciona el nombre que tenga asociado el disco. Puede ser el
* musico si se trata de un CD o la pelicula si se trata de un DVD
* o Blue-Ray.
*
* @return nombre del musico si se trata de un CD o de la pelicula
* si se trata de un DVD o Blue-Ray.
*/
public String getNOMBRE();

/**
* Proporciona el anho en que fue grabado el disco.
*
* @return fecha de grabacion.
*/
public int getANHO();
/**
* Proporciona el numero de transmisiones permitidas.
*
* @return numero de transmisiones permitidas.
*/
public int getPermitidas();

/**
* Proporciona el numero de transmisiones activas.
*
* @return numero de transmisiones activas.
*/
public int getActivas();

/**
* Modifica el valor de transmisiones permitidas.
*
* @param permisos valor que se desea establecer
*/
public void setPermitidas(int permisos);

/**
* Modifica el valor de transmisiones activas.
*
* @param activ valor que se desea establecer
*/
public void setActivas(int activ);

/** Proporciona una cadena con los distintos campos ocupando un


* lugar definido.
*
*
* @return La informacion del disco linealizada en forma de
* cadena, todos los discos con la misma informacion.
*/
public String toString();

/**
* Muestra de forma estatica el contenido de este disco.
*
* @return una cadena con la informacion y que contiene saltos de
* linea.
*/
public String muestraDisco(String titulo);

/**
* Otorga una transmision, contestando con la fecha y hora en que
* la est?? dando. Si no la puede dar, responde
* negativamente. Actualiza el numero de transmisiones activas.
*
* @return Un mensaje diciendo si pudo o no otorgar la transmision.
*/
public String daTransmision();

/**
* Actualiza el numero de transmisiones activas.
*/
public boolean terminaTransmision();

/**
* Duplica a este disco, construyendo otro objeto con los mismos
* valores, pero con identidad distintinta.
*
* @return un nuevo disco identico al que se le pide.
*/
public ServiciosDisco copiaDisco( );
}

Javadoc
Puntos totales de 11
1. Elige la opción que responda a la siguiente afirmación: Porque se puede escribir la documentación de una clase
integrada a la clase, se dice que Java es un lenguaje: 1 punto
autodocumentable autodocumentado
con documentación automática automáticamente documentado
2. Elige la opción que responda a la siguiente afirmación: Para que los comentarios de Javadoc se generen, una vez
escritos los comentarios en el archivo fuente, hay que ejecutar la pestaña (o la aplicación): 1 punto
Save Compile
Javadoc Run
3. Elige 2 opciones que respondan a la siguiente afirmación: Los comentarios para la documentación con Javadoc
empiezan con “/**” y terminan con: 1 punto
/* */
// **/
4. Elige la opción que responda a la siguiente afirmación: Cada una de las partes de un comentario para Javadoc tiene que
terminar con: 1 punto
Una etiqueta de Javadoc Un espacio
Un punto Un asterisco seguido de una diagonal
5. Tenemos el siguiente encabezado de un método que muestra el contenido de un atributo, precedido por la etiqueta que
se le pasa como parámetro.
1 public String muestraTipo (String etiqueta);
¿Cuál de los siguientes es el comentario de Javadoc que se ajusta a esta descripción?
1 /**
2 * Regresa una cadena con el valor del atributo
3 * tipo, precedido por la etiqueta que se le pasa
4 * como parámetro.
5 * @param String Una etiqueta se le pasa como
6 * entrada.
7 * @return una cadena con el tipo del parámetro
8 * precedida por la etiqueta.
9 */

1 /** muestraTipo */
2 /** Regresa una cadena con el valor del atributo
3 tipo, precedido por la etiqueta que se le pasa
4 como parámetro. **/
5 /** @param String Una etiqueta se le pasa como
6 entrada. **/
7 /** @return una cadena con el tipo del parámetro
8 precedida por la etiqueta. */

1 /**
2 * Regresa una cadena con el valor del atributo
3 * tipo, precedido por la etiqueta que se le pasa
4 * como parametro.
5 * @param String Una etiqueta se le pasa como
6 * entrada.
7 * @return una cadena con el tipo del parámetro
8 * precedida por la etiqueta.
9 */

1 /**
2 * Regresa una cadena con el valor del atributo
3 * tipo, precedido por la etiqueta que se le pasa
4 * como parámetro.
5 * @param String Una etiqueta se le pasa como
6 * entrada.
7 * @return una cadena con el tipo del parámetro
8 * precedida por la etiqueta.
9 */

6. Tenemos el siguiente encabezado de un método que vamos a documentar con Javadoc, que por su identificador
(nombre) nos dice qué va a hacer.
1 public int daMayor(int a, int b);
Elige la documentación correcta para los parámetros dentro de un comentario de Javadoc.
1 * @param a el primer numero a comparar.
2 * @param b el segundo numero a comparar.

1 * @parameter a de tipo int.


2 * @parameter b de tipo int.

1 * @input a el primer numero a comparar.


2 * @input b el segundo numero a comparar

1 * @return el mayor de los dos números.

7. Elige la opción que complete el enunciado: La razón de poner un asterisco al principio de cada renglón en un
comentario (documentación) de Javadoc es:
Separar renglones Estética (para que se vea mejor)
Marcar el alcance del comentario Seguir el formato indicado
8. Elige la opción que complete el enunciado: Los comentarios de Javadoc aparecen:
Entre el encabezado y lo que termina el método
Inmediatamente antes de lo que están documentando
Inmediatamente después de lo que están comentando
9. Responde falso o verdadero a la siguiente afirmación: El comentario de Javadoc debe incluir una descripción de cómo
trabaja el método.
Falso
Verdadero
10. Elige 2 opciones que completen el enunciado: En la página web que genera Javadoc, estas son las formas en que
aparece la información:
Primero los atributos y después los métodos de la clase, junto con el acceso que tienen y la descripción de qué hacen
Dividida en una vista general, que al menos tiene los encabezados de los métodos, y una segunda parte en la que
aparece, para cada método, más detalle
Aparecen solamente los métodos que tienen comentarios de Javadoc
En dos columnas: en la primera está el valor que regresa y en la segunda el encabezado del método y una breve
descripción. Del encabezado no aparece ni su acceso ni el tipo de valor que regresa
11. Elige la opción que la siguiente pregunta: Si se pone una etiqueta con arroba (@) en el mismo renglón que la
descripción que termina con un punto, ¿qué es lo que sucede?
Javadoc marca un error al tratar de generar la página de html
Javadoc reconoce la etiqueta y la aplica bien
La etiqueta con la arroba aparece como una segunda parte de la explicación
Javadoc
Puntos totales de 11
1. Elige la opción que responda a la siguiente afirmación: Porque se puede escribir la documentación de una clase
integrada a la clase, se dice que Java es un lenguaje: 1 punto
autodocumentable autodocumentado
con documentación automática automáticamente documentado
Correcto
😊 Java es un lenguaje auto documentable porque tiene los mecanismos, Javadoc, para, dados los comentarios de Javadoc
correctos, generar un documento independiente al del archivo de Java, donde se encuentra toda la documentación
necesaria para usar la clase documentada.

2. Elige la opción que responda a la siguiente afirmación: Para que los comentarios de Javadoc se generen, una vez
escritos los comentarios en el archivo fuente, hay que ejecutar la pestaña (o la aplicación): 1 punto
Save Compile
Javadoc Run
Correcto
😊 Esta aplicación es la que recorre un archivo de Java (con la extensión .java) y “recoge” los comentarios hechos para
Javadoc, los organiza y publica en una página de html.

3. Elige 2 opciones que respondan a la siguiente afirmación: Los comentarios para la documentación con Javadoc
empiezan con “/**” y terminan con: 1 punto
/* */
// **/
😊 Con esto termina la documentación de Javadoc para cada uno de los elementos comentados.
Correcto
😊 El primer asterisco en realidad no forma parte de la terminación del comentario, pues se termina con un asterisco
seguida de una diagonal.

4. Elige la opción que responda a la siguiente afirmación: Cada una de las partes de un comentario para Javadoc tiene que
terminar con: 1 punto
Una etiqueta de Javadoc Un espacio
Un punto Un asterisco seguido de una diagonal
Incorrecto
☹ Con esto se termina todo el comentario, no la parte a la que se refiere el comentario.

5. Tenemos el siguiente encabezado de un método que muestra el contenido de un atributo, precedido por la etiqueta que
se le pasa como parámetro.
1 public String muestraTipo (String etiqueta);
¿Cuál de los siguientes es el comentario de Javadoc que se ajusta a esta descripción?
1 /**
2 * Regresa una cadena con el valor del atributo
3 * tipo, precedido por la etiqueta que se le pasa
4 * como parámetro.
5 * @param String Una etiqueta se le pasa como
6 * entrada.
7 * @return una cadena con el tipo del parámetro
8 * precedida por la etiqueta.
9 */

1 /** muestraTipo */
2 /** Regresa una cadena con el valor del atributo
3 tipo, precedido por la etiqueta que se le pasa
4 como parámetro. **/
5 /** @param String Una etiqueta se le pasa como
6 entrada. **/
7 /** @return una cadena con el tipo del parámetro
8 precedida por la etiqueta. */

1 /**
2 * Regresa una cadena con el valor del atributo
3 * tipo, precedido por la etiqueta que se le pasa
4 * como parametro.
5 * @param etiqueta Una Cadena que se le pasa como
6 * entrada.
7 * @return una cadena con el tipo del parametro
8 * precedida por la etiqueta.
9 */

1 /**
2 * Regresa una cadena con el valor del atributo
3 * tipo, precedido por la etiqueta que se le pasa
4 * como parámetro.
5 * @param String Una etiqueta se le pasa como
6 * entrada.
7 * @return una cadena con el tipo del parámetro
8 * precedida por la etiqueta.
9 */
Correcto
😊 Esta documentación está bien pues tiene todos los elementos necesarios.

6. Tenemos el siguiente encabezado de un método que vamos a documentar con Javadoc, que por su identificador
(nombre) nos dice qué va a hacer.
1 public int daMayor(int a, int b);
Elige la documentación correcta para los parámetros dentro de un comentario de Javadoc.
1 * @param a el primer numero a comparar. 
2 * @param b el segundo numero a comparar.

1 * @parameter a de tipo int.


2 * @parameter b de tipo int.

1 * @input a el primer numero a comparar.


2 * @input b el segundo numero a comparar

1 * @return el mayor de los dos números.


Incorrecto
☹ La etiqueta @return sirve para avisar qué es lo que regresa el método (su salida).

7. Elige la opción que complete el enunciado: La razón de poner un asterisco al principio de cada renglón en un
comentario (documentación) de Javadoc es:
Separar renglones Estética (para que se vea mejor)
Marcar el alcance del comentario Seguir el formato indicado
Incorrecto
☹ El formato de los comentarios de Javadoc sólo hablan del tipo de descripciones, las etiquetas y separar con puntos estas
descripciones.
☹ El alcance del comentario está marcado por su inicio (/**) y su final (*/). Los asteriscos solos no son tomados en
cuenta.

8. Elige la opción que complete el enunciado: Los comentarios de Javadoc aparecen:


Entre el encabezado y lo que termina el método
Inmediatamente antes de lo que están documentando
Inmediatamente después de lo que están comentando
Incorrecto
☹ Javadoc se va a fijar si el comentario corresponde a lo que sigue, por lo que no puede estar después de lo que se desea
comentar.

9. Responde falso o verdadero a la siguiente afirmación: El comentario de Javadoc debe incluir una descripción de cómo
trabaja el método.
Falso
Verdadero
Incorrecto
☹ A quien ve una página de html con la descripción de una clase nada más le interesa usarla y qué servicios da; no tiene
por qué informar, ni siquiera, de qué atributos tiene, a menos que sean públicos.

10. Elige 2 opciones que completen el enunciado: En la página web que genera Javadoc, estas son las formas en que
aparece la información:
Primero los atributos y después los métodos de la clase, junto con el acceso que tienen y la descripción de qué hacen
Dividida en una vista general, que al menos tiene los encabezados de los métodos, y una segunda parte en la que
aparece, para cada método, más detalle
Aparecen solamente los métodos que tienen comentarios de Javadoc
En dos columnas: en la primera está el valor que regresa y en la segunda el encabezado del método y una breve
descripción. Del encabezado no aparece ni su acceso ni el tipo de valor que regresa
Correcto
😊 En la primera parte, la más compacta, aparecen en dos columnas.
Correcto
😊 Lo que hace Javadoc es recoger los comentarios, si los hay, y mostrarlos en dos tablas consecutivas. La segunda dice
los parámetros que tiene el método, con la explicación, si es que se dio y la descripción del valor que regresa.

11. Elige la opción que la siguiente pregunta: Si se pone una etiqueta con arroba (@) en el mismo renglón que la
descripción que termina con un punto, ¿qué es lo que sucede?
Javadoc marca un error al tratar de generar la página de html
Javadoc reconoce la etiqueta y la aplica bien
La etiqueta con la arroba aparece como una segunda parte de la explicación
Incorrecto
☹ Javadoc no marca ningún error. Lo hace cuando no está bien armada alguna de las etiquetas de @param.
Incorrecto
☹ No la reconoce porque tiene que estar sola al principio de la línea o después de un asterisco.

También podría gustarte