Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Definicin de relaciones
Una relacin es un vinculo entre dos objetos, este vinculo, se presenta por que, ambos objetos, se necesitan mutuamente para lograr la realizacin de una actividad o la realizacin de unos servicios. Estas relaciones nacen por la misma dinmica social o por que la naturaleza as lo estableci. Que nunca se me olvide: LAS RELACIONES DEPENDEN DEL CONTEXTO Dominio del Problema
Definicin de relaciones
Hijos Vehculo
Pacientes
Pliza de Seguro
Empresa
trabaja para
devenga
Sueldo
Cuenta de Ahorro
PERSONA
Asignaturas
Composicin (Definicin)
Se constituye entre el todo y la parte. La clase todo controla la existencia de las clases parte. Mientras existe el todo=existe la parte. Al crear un objeto del todo se crea un objeto de la parte Objeto A tiene un/posee un/contiene un objeto de la clase B Los objetos suelen estar compuestos de conjuntos de objetos ms pequeos; un coche es un conjunto de motor y carrocera, un motor es un conjunto de piezas, y as sucesivamente. Si se elimina el todo se eliminan las partes. Contiene un atributo, que puede ser una coleccin y adems de ello la clase que contiene la coleccin debe tener un mtodo que agregue los elementos a la coleccin.
Composicin (Notacin)
o La notacin para representar las composiciones, es una lnea con un rombo lleno en el extremo apuntando a la clase todo
Composicin (Implementacin)
Public class Persona { private int id; private String nombre; private String apellido; public Cuenta cuenta = new Cuenta(); public int getId() { return id; } public void setId(int id) { this.id=id; } public string getNombre() { return nombre; } public void setNombre(String nombre) { this.nombre=nombre; } public string getApellido() { return apellido; } public void setApellido(String apellido) { this.apellido=apellido; } public int getCuenta() { return cuenta; } public void setCuenta(Cuenta cuenta) { this.cuenta=cuenta; } }
public class Cuenta { private int numCuenta; private double saldo; public int getNumCuenta() { return NumCuenta; } public void setNumCuenta(int numCuenta) { this.numCuenta=numCuenta; } public double getSaldo() { return saldo; } public void setSaldo(double saldo) { this.saldo=saldo; } }
Agregacin (Definicin)
Existe una relacin de agregacin si en el enunciado del problema hay expresiones de la forma "tiene_un", "es_parte_de"...
Se constituye entre el todo y la parte. La existencia del todo no condiciona la existencia de la parte. Si se elimina el todo NO se eliminan las partes. Contiene un atributo, que puede ser una coleccin, es decir un array, vector, etc, y adems de ello la clase que contiene la coleccin debe tener un mtodo que agregue los elementos a la coleccin.
Agregacin (Notacin)
o La notacin para representar las agregaciones, es una lnea con un rombo vaco en el extremo apuntando a la clase todo
Agregacin (Implementacin)
public class Automovil { private String placa; private int numPuertas; private String marca; private String modelo; public Motor motor; public String getPlaca() { } public void setPlaca(String placa) { } public int getNumPuertas() { }
} public class Motor { private int numMotor; private int revolucionesPorMin; public int getNumMotor() { } public void setNumMotor(int numMotor) { } public int getRevoluciones() { } public void setRevoluciones(int rev) { }
Dependencia (Definicin)
Es una relacin de uso, es decir que una clase utiliza a otra. Y si esta ltima se altera, la anterior se puede ver afectada.
Una clase depende de otra para llevar a cabo una tarea o para realizar su funcionamiento. es una relacin momentnea que se establece entre un cliente y un servidor. La relacin Dependencia tambin se conoce con el nombre uso Se pasa la creacin del objeto como parmetro Este tipo de relacin hace referencia, a los parmetros que se pasan en un mtodo
Dependencia (Notacin)
o La notacin para representar la dependencia, es una lnea discontinua
o Ej) La clase B necesita de un objeto de la clase A para llevar a cabo una funcionalidad, entonces la notacin es:
Dependencia (Implementacin)
En un mtodo de B aparece un objeto auxiliar como argumento
Dependencia (Implementacin)
public class Herramienta { private String nombre; private String funcionalidad;
Asociacin (Definicin)
Son relaciones del tipo "pertenece_a" o "est_asociado_con". Una asociacin representa una relacin entre clases. Las asociaciones son los mecanismos que permite a los objetos comunicarse entre s.
se implementa ya sea declarando un atributo de tipo A en la clase B o haciendo un array de objetos de tipo A en la clase B. Normalmente la conexin entre los objetos se realiza recibiendo la referencia de uno de ellos en el constructor u otro mtodo. Al menos un atributo de la clase B es una referencia a un objeto de la clase A
Asociacin(Notacin)
Esta relacin se representa en UML mediante una lnea que une ambas clases
Asociacin (Implementacin)
Se implementa introduciendo referencias a objetos de la clase destino de la relacin como atributos de la clase origen
Herencia (Definicin)
Relaciones del tipo es un/ es una
Permite que una clase obtenga la funcionalidad de otra aadiendo nuevos atributos y mtodos (o modificando el comportamiento de los existentes) Clase A = Clase Base Clase Padre - SuperClase Clase B = clase Derivada Clase hija subclase
Herencia (Definicin)
Un objeto de una subclase hereda todos los atributos y mtodos de la superclase
Una subclase es una forma restringida de una superclase
Ingeniera Directa
public class Estudiante{ } public class EstudianteGraduado extends Estudiante{ } public class EstudianteActivo extends Estudiante{ }
Herencia - Ejercicios
Construya un diagrama de clase para la siguiente situacin: 1. Una empresa dedicada a la venta de vehculos tiene a disposicin de los clientes varias clases (camin, automvil, buces para servicio municipal y buces para servicio intermunicipal). La empresa maneja informacin comn para todas estas clases de vehculos, tales como: marca del vehculo, color del vehculo, placa del vehculo y modelo del vehculo. Para cada clase de vehculo maneja la siguiente informacin especifica: camin (capacidad y tipo de carga), automvil (numero de puertas, disposicin particular, servicio pblico -, buces municipales (empresa, chofer, ruta), buces intermunicpales (empresa, chofer, ciudad origen, ciudad destino).
Herencia - Ejercicios
Construya un diagrama de clase para la siguiente situacin: 2. Una empresa maneja dos lneas de productos perecederos y no perecederos. La informacin que utiliza para llevar un registro de dichos productos es: IVA, nombre del producto, fecha de emisin (compuesta por subatributos da/mes/ao -) y precio del producto. Adicionalmente los productos perecederos manejan la siguiente informacin: fecha de vencimiento (compuesta por subatributos da/mes/ao -)
Herencia - Ejercicios
Construya un diagrama de clase para la siguiente situacin: 3. Un hospital necesita que se le organice la informacin que maneja en cuanto al personal que diariamente labora dentro de l y los pacientes que son atendidos. En cuanto a los empleados maneja la informacin como el Nombre, Direccin, Telfono, Edad y los divide en dos categoras Mdicos y Enfermeras, con respecto a estos maneja informacin como la fecha de ingreso, fecha de terminacin del contrato (ambos compuesto de da/mes/ao), hora de entrada, hora de salida y salario. Adicionalmente para los mdicos maneja la siguiente informacin especialidad, nivel (1 menos de dos aos, 2 entre 1 y 4 aos y 3 ms de tres aos). En cuanto a las enfermeras se maneja la categora (auxiliar, instrumentadora, profesional). Para los pacientes maneja la siguiente informacin: Nombre, Direccin, Telfono, Edad, Fecha de ingreso, fecho de alta (ambos compuesto de da/mes/ao), motivo de consulta, medicamentos