Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Fundamentos de Programacion Unidad 4
Fundamentos de Programacion Unidad 4
Estudiante
Nombre
ApellidoP
ApellidoM
FechaN
FechaIngreso
Fecha
da
mes
ao
1 2
Constructores:
Un constructor es un mtodo de propsito especfico que se ejecuta automticamente
cuando se crea un objeto de una clase. Un constructor sirve para inicializar las variables
de clase. Los constructores tienen el mismo nombre que la clase, adems no tienen valor
de retorno (incluso ni void) y estn clasificados en constructores por defecto y
alternativos/sobrecargados.
Constructores por defecto
Un constructor que no tiene parmetros se le llama constructor por defecto. Un
constructor por defecto normalmente inicializa las variables con un valor por default.
class Punto
{
private int x;
private int y;
Punto () { //constructor por defecto
x = 0;
y = 0;
}
Punto (int x, int y) {
this.x = x;
this.y = y;
}
}
Regla: Java crea automticamente un constructor por defecto cuando no existe
otro constructor. Tal constructor inicializa las variables tipo int, float, double,
long con cero, las booleanas con false y las referencias con null.
Precaucin: Tenga cuidado con la declaracin de una clase que slo tenga un
constructor con argumentos. En ese caso si se omite un constructor sin
parmetros no ser posible utilizar el constructor por defecto.
class Punto {
private int x;
private int y;
.
}
.
Punto primerPunto = new Punto(); // no es posible utilizar este constructor
Constructores alternativos/sobrecargados
A un constructor con parmetros se le denomina constructor alternativo/sobrecargado
class Punto {
private int x;
private int y;
Punto () { // constructor por defecto
x = 0;
y = 0;
}
Punto (int x, int y) { // constructor alternativo
this.x = x;
this.y = y;
}
Destructores:
Un destructor es una funcin miembro con igual nombre que la clase, pero precedido por
el carcter ~. Una clase slo tiene una funcin destructor que, no tiene argumentos y no
devuelve ningn tipo. Un destructor realiza la operacin opuesta de un constructor,
limpiando el almacenamiento asignado a los objetos cuando se crean. Java no posee
destructores y para recuperar un objeto lo hace por medio del recoleccin de basuras.
Clase Abstracta:
Una clase abstracta es aquella clase que tiene por lo menos un mtodo abstracto
(Declarado pero no definido) y se denota poniendo el nombre de la clase en letras
"itlicas". Una clase abstracta no puede ser instanciada pues posee mtodos abstractos
(an no han sido definidos, es decir, sin implementacin). La nica forma de utilizarlas es
declarar subclases que redefinan los mtodos abstractos, es decir, que definan el cuerpo
de cada mtodo abstracto.
Herencia:
Indica que una subclase hereda los mtodos y atributos de una Sper Clase, por ende la
Subclase adems de poseer sus propios mtodos y atributos, poseer las caractersticas
y atributos visibles de la Sper Clase (public y protected), ejemplo:
En la figura se especifica que Auto y Camin heredan de Vehculo, es decir, Auto posee
los atributos de Vehculo (dueo, puertas, ruedas) adems posee algo particular que es
Descapotable, en cambio Camioneta tambin hereda los atributos de Vehculo (dueo,
puertas, rudas) pero posee como particularidad propia tara y carga.
Asociacin:
La relacin entre clases conocida como Asociacin, permite asociar objetos que
colaboran entre s. Cabe destacar que no es una relacin fuerte, es decir, el tiempo de
vida de un objeto no depende del otro.
Ejemplo:
Un cliente puede tener asociadas muchas rdenes de Compra, en cambio una orden de
compra solo puede tener asociado un cliente.
Dependencia o Instanciacin (uso):
Representa un tipo de relacin muy particular, en la que una clase es instanciada (su
instanciacin es dependiente de otro objeto/clase). Se denota por una flecha punteada.
El uso ms particular de este tipo de relacin es para denotar la dependencia que tiene
una clase de otra, como por ejemplo una aplicacin grafica que instancia una ventana (la
creacin del Objeto Ventana esta condicionado a la instanciacin proveniente desde el
objeto Aplicacin):
Cabe destacar que el objeto creado (en este caso la Ventana grfica) no se almacena
dentro del objeto que lo crea (en este caso la Aplicacin).
Ejercicios:
1. Se tiene una tienda La Econmica que vende 4 productos, cada uno de los cuales
maneja la siguiente informacin. (1) Nombre del producto (2) Tipo (puede ser
producto de papelera, supermercado o farmacia) (3) Cantidad actual (numero de
unidades disponibles en la tienda) (4) Stock mnimo (numero de productos que
como mnimo deben de existir en la tienda) (5) Precio base de venta. Para calcular
el precio final de cada producto se le tiene que sumar los impuestos que marca la
ley: los de papelera tienen un 16% de IVA, los de supermercado un 4% y los de
farmacia un 0%. Las operaciones que debe de manejar son 1) Venta de un producto
a un cliente, 2) realizar un pedido cuando el stock esta por debajo del mnimo, 3)
Mostrar algunas estadsticas. (a) Producto mas vendido (b) Producto menos vendido
(c) Total de dinero de las ventas y (d) Promedio de ventas de la tienda (Valor total
de las ventas entre el numero total de unidades vendidas)
Determine:
A. Diagrama de clases (Nombre, Atributos y Comportamiento)
B. Asociacin
C. Dependencia o instanciacin
D. Diagrama de Objetos, bajo los siguientes supuesto:
Suponga que la tienda tiene los siguientes productos:
a. Libreta de apuntes, papelera, $5.50
b. Litro de leche, supermercado, $12.00
c. Jabn en polvo, supermercado, 10.50
d. Aspirina, farmacia, $15.00
E. Los requerimientos funcionales
Adems suponga que ya ha vendido 6 libretas, 25 litros de leche, 14 bolsas de
jabn, 7 cajas de aspirinas y en la caja de la tienda no hay dinero.
Por ultimo tenemos la siguiente tabla:
Producto Cantidad en existencia Stock mnimo
Libreta de apuntes 44 15
Leche 15 20
Jabn 36 8
Aspirina 13 11
2. Las universidades de la Laguna contienen un Nombre de Universidad y un Campus.
Por cada universidad tiene Trabajadores los cuales pueden ser Catedrticos o
Administrativos. Los catedrticos tienen una categora y como actividades tiene
investigacin y enseanza. Los Administrativos contienen un departamento y como
actividades la Administracin. Tambin existe los estudiantes, que pueden ser de
Maestra o Doctorado. Los estudiantes de Maestra tiene las propiedades de titulado
y las caractersticas de colaborador, mientras que los estudiantes de Doctorado
tiene Programa al que pertenecen y como caracterstica realiza tesis.
Determine:
A. Los requerimientos funcionales
B. Diagrama de clases (Nombre, Atributos y Comportamiento)
C. Asociacin
D. Dependencia o instanciacin
E. Diagrama de Objetos
Universidad de la Laguna
Universidad de Durango
Universidad de Lerdo
Producto de Aprendizaje 4.1: Elabore lo que se le solicita:
1. Del siguiente diseo describa los siguientes puntos:
a) Clases concretas
b) Clases abstractas
c) Herencia
d) Asociacin
e) Dependencia o instanciacin
2. La empresa de de publicidad Megfono SA de CV tiene varios proyectos que
maneja varia informacin entre la que se encuentra descripcin del proyecto, fecha
de inicio, fecha de fin y presupuesto, cada proyecto se asocia con varios procesos.
La informacin que maneja los procesos es: Descripcin del proceso, costo y
objetivo. Cada proceso tiene asociada varias personas. Cada persona maneja la
informacin de nombre de la persona, RFC y correo electrnico. Cada persona se
asocia con varios roles. Cada rol maneja la informacin de descripcin, evaluacin y
grado de responsabilidad. De cada personal herede JefeProyecto, Analista y
Desarrollador. Cada clase tiene como comportamiento los constructores y los
destructores.
Determine:
A. Diagrama de clases (Nombre, Atributos y Comportamiento)
B. Asociacin
C. Dependencia o instanciacin
D. Los requerimientos funcionales
3. Investigar y entregar el siguiente punto:
Consorci o
Nombre
Domicilio
Telfono
CreaProductoA()
CreaProductoB()
Fabrica 1
ProductoA()
ProductoB()
ProductoA
ProductoA2 ProductoA1
Cl i ente
Fabrica 2
ProductoA()
ProductoB()
ProductoB
ProductoB2 ProductoB1
1
*
1
*
*
Producto de Aprendizaje 4.2: Investigue el siguiente tema
IV.4. Relacin entre la programacin orientada a objetos y la estructurada