Boletin 1 - Implementación de tipos

Anuncio
PROGRAMACIÓN ORIENTADA A OBJETOS
Curso: 2011/12
DEFINICIÓN DE TIPOS
Versión: 1.0.0
Tipo Persona - Propiedades
•
•
•
•
•
Nombre – de tipo cadena, consultable.
Apellidos – de tipo cadena, consultable.
Dni – de tipo cadena, consultable.
Sexo – de tipo Genero, consultable y modificable.
Edad – de tipo entero, consultable y modificable.
Representación como cadena: dni – apellidos, nombre
(Ejemplo: 45231690S – Mateo Romero, Javier)
Nota: El tipo Genero se implementará como un enumerado donde sus posibles valores
son dos: HOMBRE y MUJER.
Tipo Paciente - Propiedades
Subtipo de Persona. Añade las siguientes propiedades:
• Altura – de tipo real, consultable y modificable.
• Peso – de tipo real, consultable y modificable.
• Índice de masa corporal – de tipo real, consultable.
o El índice de masa corporal se calcula como el peso partido por el cuadrado de la altura
• Número de la seguridad social – de tipo cadena, consultable.
• Es urgencia – de tipo lógico, consultable y modificable.
Representación como cadena: dni – apellidos, nombre (índice de masa corporal)
(Ejemplo: 45231690S – Mateo Romero, Javier (26.23))
Tipo Médico - Propiedades
Subtipo de Persona. Añade las siguientes propiedades:
•
•
•
•
Categoría profesional – de tipo Categoría, consultable y modificable.
Subespecialidad – de tipo cadena, consultable.
Trabaja en privado – de tipo lógico, consultable.
Horas semanales – de tipo real, consultable.
Representación como cadena:
dni – apellidos, nombre – especialidad, categoría profesional(Ejemplo: 45231690S – Mateo Romero, Javier –neonatología, residente-)
Nota: El tipo Categoría se implementará como un enumerado donde sus posibles
valores son dos: RESIDENTE, ADJUNTO e INTERINO.
Definición de tipos
2
Tipo Departamento - Propiedades
• Nombre – de tipo cadena, consultable.
• Médicos – de tipo array de médico, consultable.
• Número de médicos – de tipo entero, consultable.
Otros métodos del tipo:
• getMedico(Integer pos): devuelve el médico que ocupa la posición pos del array.
• trabajaEnDpto(Medico m): devuelve un lógico indicando si el médico m trabaja
o no en el departamento.
• numMedicos(String subesp): devuelve el número de médicos del departamento
que trabajan en una determinada subespecialidad.
• veterano(): devuelve el médico de mayor edad del departamento.
Representación como cadena: Una cadena formada por el nombre del departamento
seguida de la lista de médicos que trabajan en él.
Tipo Hospital – Propiedades
•
•
•
•
Nombre – de tipo cadena, consultable.
Dirección – de tipo cadena, consultable.
Departamentos – de tipo array de departamentos, consultable.
Número de departamentos – de tipo entero, consultable.
Otros métodos del tipo:
• getDepartamento(Integer planta): devuelve el departamento de una determinada
planta del hospital (la planta viene dada por la posición en el array).
• getDepartamento(String nom): devuelve el departamento del hospital cuyo
nombre coincida con el parámetro (null si no existe ninguno).
• getMedicosVeteranos(): devuelve un array que contiene el médico más veterano
de cada departamento.
Representación como cadena: Una cadena formada por el nombre del hospital seguida
de una lista con los nombres de los departamentos que lo forman.
Descargar