Title: AgregacinComposicin
1Cuando se sabe una cosa, sostener que se sabe y
cuando no se sabe, admitirlo ese es el verdadero
conocimiento Confucio
Quien pregunta es tonto por cinco minutos, quien
no pregunta es tonto para siempre.Confucio
2Agregación/Composición
- Cómo lo implementamos en JAVA?
3Agregación/composición
- Supongamos que deseamos implementar una clase par
como en scheme
4Agregación/composición
- Implementaríamos primero una clase CAR y luego
una clase CDR
5Agregación/composición
- Implementaríamos primero la clase CAR
Atributos valor Métodos constructor
setcar getcar
6Agregación/composición
- Implementaríamos luego la clase CDR
Atributos valor Métodos constructor
setcdr getcdr
7Agregación/composición
class CCar private int car public CCar(int
val) carval public CCar() car
0 public int getcar() return car
public void setcar(int val) carval
Atributos valor Métodos constructor
setcar getcar
8Agregación/composición
class CCdr private int cdr public CCdr(int
val) cdrval public CCdr() cdr
0 public int getcdr() return cdr
public void setcdr(int val) cdrval
Atributos valor Métodos constructor
setcdr getcdr
9Agregación/composición
- Ahora nos toca implementar la clase PAR
Atributos car cdr Métodos constructor car
cdr set_car set_cdr
10Agregación/composición
class CPar private CCar car private CCdr
cdr public CPar(int val1,int val2) car
new CCar(val1) cdr new CCdr(val2)
public CPar() car new CCar() cdr new
CCdr() public void view()
System.out.println("el car es"car.getcar()
"el cdr es"cdr.getcdr())
public int car() return car.getcar()
public int cdr() return cdr.getcdr()
public void set_car(int val)
car.setcar(val) public void set_cdr(int
val) cdr.setcdr(val)
11Agregación/composición
- Implementando mi clase MAIN que crea un par
class Par public static void main(String
args) CPar par1 CPar par2 int
valint par1 new CPar() par2 new
CPar() par1.view() System.out.println("Indi
que valor del car") valintCTeclado.ReadInt()
par1.set_car(valint) System.out.println("Indi
que valor del cdr") valintCTeclado.ReadInt()
par1.set_cdr(valint) par1.view()
12Agregación/composición
- Elaboremos algunos ejercicios.
- Incluya en la aplicación anterior, generar dos
pares y aplique - Genere un nuevo par, que sea la suma del ambos
car y ambos cdr - Genere un nuevo par donde se encuentre el mayor
de ambos car y el mayor de ambos cdr. - Elabore una nueva aplicación visualizando un
celular como agregación de los datos del usuario
y de la cuenta.
13Agregación/composición
En resumen, los conceptos vistos fueron
14Agregación/composición
Bibliografía
- Java 2 Manual de Usuario y tutorial, Alfaomega,
Agustín Froufe.