UML A Clases Java
UML A Clases Java
Parte 1
Clara Patricia Avella Ibez
Vehiculo
Persona
- docId: String
- nombre: String
- apellido: String
- fechaNac: String
- gnero: char
+crearPersona(docN:String, nombreN:
String, apellidoN: String,
fechaNacN:String, generoN: char,
vehiculo:Vehiculo): void
tiene
Se lee:
Una
persona
tiene 1
vehculo
- marca: String
- referencia: String
- modelo: int
- placa: String
- color: String
- valor: int
+crearVehiculo(marcaN:String,
referenciaN: String, modeloN: int,
placaN:String, colorN: String, valorN:
int): void
+cambiarValor(valorNuevo: int): void
+calcularImpuesto(void): double
Observemos que la
clase Persona conoce
a la clase Vehiculo
(por la direccin de la
relacin de
asociacin) pero la
clase Vehiculo no
conoce a la clase
persona
Vehiculo
- marca: String
- referencia: String
- modelo: int
- placa: String
- color: String
- valor: int
Clase en UML
Nombre de la clase
seguida de la llave
de apertura al inicio
{
La clase debe tener
una llave de cierre }
al final para indicar
que ah termina el
cdigo de la clase
Atributos
Constantes
Operaciones
Mtodos
Atributos
Accesibilidad de los atributos y constantes
public: es accesible por cualquier objeto dentro y
fuera de la clase.
private: slo es accesible dentro de la clase donde es
declarada
protected: es accesible dentro de la clase donde es
declarada y desde las clases derivadas (subclases o
clases hijas) cuando hay herencia.
final : para definir constantes
static: para declarar atributos , constantes o mtodos
de clase
Tipos de
modificadores para
atributos, constantes
y mtodos
modificador static final tipoDeDato nombre=valor;
Constantes
Mtodos
Ejemplos:
calcularSalario() para un mtodo
telefonoCasa para un atributo
Vehiculo
- marca: String
- referencia: String
- modelo: int
- placa: String
- color: String
- valor: int
El smbolo menos
(modificador de atributos) del
diagrama de clases se
convierte en private en cdigo
java.
Esto significa que a los
atributos solo se pueden
acceder directamente dentro
de la clase
Tenga presente que en el diagrama de
clases UML se escribe primero el nombre
del atributo y despus de los dos puntos
el tipo de dato, pero en Java primero va el
tipo de dato y despus el nombre del
atributo, seguido de punto y coma ;
Persona
- docId: String
- nombre: String
- apellido: String
- fechaNac: String
- gnero: char
+crearPersona(docN:String, nombreN:
String, apellidoN: String,
fechaNacN:String, generoN: char,
vehiculo:Vehiculo): void
Retomando el diagrama de
clases, recordemos que la
clase Persona conoce a la
clase Vehiculo, es decir que
la relacin de asociacin nos
indica que cada objeto de la
clase Persona tiene un
objeto de la clase Vehiculo
tiene
- marca: String
- referencia: String
- modelo: int
- placa: String
- color: String
- valor: int
+crearVehiculo(marcaN:String,
referenciaN: String, modeloN: int,
placaN:String, colorN: String, valorN:
int): void
+cambiarValor(valorNuevo: int): void
+calcularImpuesto(void): double
Como la relacin de
asociacin se convierte en
atributo, el tipo de dato del
atributo ser el nombre de
la Clase con la cual se tiene
la relacin
El nombre del atributo en
este caso es vehiculo (con
minscula porque es el
atributo)
A la izquierda de la definicin de
atributos aparecen bombillos amarillos
que significan Warning (mensaje de
prevencin). En este caso nos indica
que no ha sido utilizado ninguno de los
atributos
definidos.
Cuando
adicionemos los mtodos se soluciona.
esto
Diagrama de objetos
Para entender mejor lo que significa que un objeto tenga atributos que son a su vez objetos de otra clase,
pensemos en el ejemplo que estamos trabajando.
La siguiente es una imagen que nos muestra los objetos que existiran en el mundo computacional si
queremos representar a una persona con docId (documento de identidad): 345, nombre: Carlos, apellido:
Surez, fecha de nacimiento: 27/12/1990 y gnero: m, que a su vez tiene (es propietaria) el vehculo con
marca: Renault, referencia: logan, modelo: 2009, placa: GRS123 y color: gris
Esta caja
representa a un
objeto llamado p
de tipo Persona
p: Persona
docId: 345
nombre: Carlos
apellido: Surez
fechaNac:
27/12/1990
genero: m
vehiculo:
v: Vehiculo
marcaRenault
referencia: Logan
modelo: 2009
placa: GRS123
color: Gris
El objeto v de la
clase Vehiculo es el
dato que ira
asignado al atributo
vehiculo del objeto
p de la clase
Persona
Empleado
- cedula: String
- nombre: String
- apellido: String
- genero: char
- salario: int
- dia: int
1 - mes: int
- anio: int
Fecha de nacimiento
Fecha de ingreso
mtodos
public class Empleado{
private String cedula;
private String nombre;
private String apellido;
private char genero;
private int salario;
private Fecha fechaNac;
private Fecha fechaIng;
}
mtodos
public class Fecha{
private int dia;
private int mes;
private int anio;
}
Atributos propios
de la clase
Atributos que
salen de las
relaciones
Libro
- isbn: String
- titulo: String
- anio: int
- precio: int
Pertenece a
mtodos
- codigo: int
- nombre: String
- anio: int
mtodos
Ejemplos
Persona
Fecha
Fecha de nacimiento
- dia: int
- mes: int
- anio: int
- cedula: String
- nombre: String
- apellido: String
- genero: char
mtodos
ciudad de nacimiento
mtodos
ciudad de residencia
1
1
Ciudad
- codigo: int
- nombre: String
- indicativo: int
mtodos
public class Fecha{
private int dia;
private int mes;
private int anio;
}