Professional Documents
Culture Documents
a. Modelación de clases.
b. Definición de variables de instancia y de clase.
c. Comportamientos de objetos de la clase.
d. Diagrama de clases.
a. Modelación de clases.
UML es una técnica para la especificación de sistemas en todas sus fases. Nació
en 1994 cubriendo los aspectos principales de todos los étodos de diseño
antecesores y precisamente, los padres de UML son Grady Booch, autor de
método Booch; James Rumbaugh autor del método OMT e Ivar Jacobson, autor
de los métodos OOSE y Objectory. La versión 1.0 de UML fué liberada en enero
de 1997 y ha sido utilizado con éxito en sistemas construidos para toda case de
industrias alrededor del mundo: hospitales, bancos, comunicaciones, aeronáutica,
finanzas, etc.
Beneficios de UML:
Variable de clase
En programación orientada a objetos, una variable de clase o miembro de dato
estático es una variable, al contrario que las variables de instancia, propias de la
clase que la contiene y no de instancias de la misma. Esto quiere decir que todos
los objetos que se creen de esta clase comparten su valor, son llamadas variables
estáticas,
Por ejemplo, supongamos que hay una clase llamada perro y que tiene una
variable llamada patas. Cuando hagamos una instancia de la clase perro esta
variable tendrá el mismo valor en todas las instancias creadas y por eso se dice
que comparten su valor, y en caso de que el valor cambie cambiará para todas las
instancias creadas de la clase perro.
Por ejemplo en Java, para invocar una variable de clase no es necesario crear un
objeto de la clase, pero si se quiere llamar desde otra clase es necesario escribir
el nombre de la clase que la contiene seguido de un punto y el nombre de la
variable, de esta forma:
NombreClase.nombreVariable
Además es necesario que el método que la llame también sea estático (static).
Del mismo modo que hay variables de instancia y de clase, también hay métodos
de instancia y de clase. En el primer caso, un objeto llama a un método para
realizar una determinada tarea, en el segundo, el método se llama desde la propia
clase.
d. Diagrama de clases:
• El diagrama de clases puede tener como ejemplo: una clase que seria un
objeto o persona misma en la cual se especifica cada acción y
especificación.
• Propiedades de objetos que tienen propiedades y/u operaciones que
contienen un contexto y un dominio, los primeros dos ejemplos son clases
de datos y el tercero clase de lógica de negocio, dependiendo de quién
diseñe el sistema se pueden unir los datos con las operaciones.
• El diagrama de clases incluye mucha más información como la relación
entre un objeto y otro, la herencia de propiedades de otro objeto, conjuntos
de operaciones/propiedades que son implementadas para una interfaz
gráfica.
• Presenta las clases del sistema con sus relaciones estructurales y de
herencia.
• El diagrama de clases es la base para elaborar una arquitectura MVC o
MVP.
2. Teniendo en cuenta el siguiente problema, escriba las clases y defina las
variables y métodos:
En un banco se manejan cuentas bancarias que pertenecen a un cliente; cada
vez que éste realiza un depósito o retiro, debe dar su número de usuario para
poder realizar ambas operaciones, claro que en el caso de un retiro, es
necesario mostrar alguna identificación la cual compruebe que él es el
poseedor de la cuenta, y si hay dinero suficiente en ésta, dicha operación se
realiza.
El banco tiene una serie de empleados con una identificación para cobrar su
sueldo; es importante manejar los años que llevan trabajando, pues de esto
dependen sus vacaciones (se dan cinco días por el primer año y se aumentan
dos días por cada año cumplido hasta llegar al máximo que son 20 días), un
empleado del banco puede ser cajero, supervisor, recepcionista, en fin, existen
una serie de puestos que se deben cubrir para que esta entidad funcione
satisfactoriamente.
El banco tiene contacto con algunas empresas con las que sus clientes pueden
tener inversiones, manejando diferentes niveles de riesgo. El banco identifica
una clave de casa inversionista, de hecho es muy importante la confiabilidad
de ésta teniendo en cuenta su historial, los porcentajes de retorno de inversión,
los montos de las inversiones y los plazos, esto para poder ofrecerle al usuario
una gama de inversiones que puedan realizarse por medio de la entidad
financiera.
Tenga en cuenta utilizar al menos una variable y un método de clase para cada
una de las clases definidas.
Definicion de las Clases:
Clase Persona
Atributos:
identificacion: int
nombres: String
apellidos: String
genero: char
edad: int
Métodos:
setIdentificacion(int): void
setNombre(String): void
setApellidos(String): void
setGenero(char): void
setEdad(int): void
getIdentificacion(): int
getNombre(): String
getApellidos(): String
getGenero(): char
getEdad(): int
Clase Empleado
Atributos:
idEmpleado: int
sueldo: double
antiguedad: int
cargo: String
Métodos:
setIdEmpleado(int): void
setSueldo(double): void
setAntiguedad(int): void
setCargo(String): void
getIdEmpleado(): int
getSueldo(): double
getAntiguedad(): int
getCargo():String
CalcularVacaciones():
Clase Cliente
Atributos:
idCliente: int
fechaRegistro: date
vip: boolean
Métodos:
setIdCliente(int): void
setFechaRegistro(date): void
setVip(boolean): void
getIdCliente(): int
getFechaRegistro(): date
isVip(): boolean
Clase Cuenta
Atributos:
numero: int
titular: String
monto: double
tipoCuenta: String
Métodos:
setNumero(int): void
setTitular(String): void
setMonto(double): void
setTipoCuenta(String): void
getNumero(): int
getTitular(): String
getMonto():double
getTipoCuenta():String
Depositar():
Retirar():
CalcularSaldo():
Clase CasaInversionista
Atributos:
nit: int
razonSocial: String
clave: String
porcentajeInversion: String
montosInversion: String
plazos: String
Métodos:
setNit(int): void
setRazonSocial(String): void
setClave(String): void
setPorcentajeInversion(String): void
setMontosInversion(String): void
setPlazos(String): void
getNit(): int
getRazonSocial(): String
getClave(): String
getPorcentajeInversion(): String
getMontosInversion(): v
getPlazos(): String
Bibliografia
https://es.calameo.com/read/0029528105dbcbb401966
http://www.sc.ehu.es/sbweb/fisica/cursoJava/fundamentos/clases1/clases.ht
m