Ejercicio Empresa (Herencia) parte 2 - Contenido educativo
Ajuste de pantallaEl ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:
Vamos a ver
00:00:00
Entonces
00:00:01
Si decís algo es porque
00:00:02
pensáis que está bien
00:00:05
que se grabe
00:00:08
Vale, voy a ver
00:00:09
donde hemos llegado
00:00:12
Ok, he denunciado
00:00:13
Vale, entonces, hemos estado viendo
00:00:19
esto de aquí del departamento
00:00:22
¿El departamento tiene que hacer algo más?
00:00:23
No. ¿Queremos probar
00:00:26
un poquito lo que hemos hecho ya que tenemos
00:00:27
departamento gerente empleado?
00:00:29
Pues sí. Entonces voy a crearme
00:00:31
por ejemplo aquí un main public static void main string argus y vamos a ver qué
00:00:34
hacemos aquí dentro vale entonces lo que queremos hacer es creamos un
00:00:50
departamento y miramos cuánto me cuesta cuánto me cuesta vale para crear un
00:00:54
departamento, ¿cómo lo hago? Por ejemplo, departamento dept es igual a new departamento
00:00:58
De new
00:01:08
Empleado
00:01:11
De
00:01:14
Alguien
00:01:16
Punto y coma
00:01:23
Y luego
00:01:28
Debt
00:01:30
Punto
00:01:31
Salario
00:01:36
Debt
00:01:40
Y lo escribimos esto
00:01:41
Así
00:01:44
Pidamos esto
00:01:49
Por un lado y esto por el otro
00:02:00
Vale
00:02:03
Si está bien
00:02:05
Esto debería dar el mismo resultado
00:02:07
¿Vale?
00:02:09
No, no da el mismo resultado porque uno lo he multiplicado
00:02:10
Por 1.5 y uno no
00:02:15
¿Vale?
00:02:16
Para comprobarlo
00:02:18
Tanto esto de aquí es solo una cosa
00:02:20
Pues lo dejo a uno
00:02:22
¿Vale?
00:02:24
Ok, perfecto
00:02:28
Mil euros, tengo un solo departamento
00:02:29
un solo, como se dice
00:02:31
empleado, vale
00:02:33
fenomenal, ahora por ejemplo podría
00:02:35
probar, vale
00:02:37
hagamos así
00:02:38
SISO
00:02:41
DEP
00:02:42
1, vamos a hacer varias pruebas
00:02:45
vale, este es el departamento 1
00:02:51
probamos
00:02:53
el departamento 2
00:02:55
el departamento 2
00:02:56
en vez de un empleado
00:02:59
hace un gerente
00:03:06
Con sueldo básico
00:03:07
Y
00:03:12
200 euros de bonus
00:03:13
Lanzo
00:03:15
Departamento 2
00:03:21
Me lo calcula bien
00:03:22
Ahora me creo un array
00:03:23
De empleados y gerentes
00:03:29
Mezclados
00:03:32
Y a ver que pasa
00:03:32
Entonces
00:03:33
Empleado
00:03:36
No se que
00:03:38
Es igual a new
00:03:40
Empleado
00:03:42
De tres
00:03:45
Vale
00:03:46
Y le pongo
00:03:48
Que emp
00:03:50
De uno
00:03:52
Es igual
00:03:53
A new
00:03:56
Empleado
00:03:57
De nombre a
00:03:59
Gana dos mil euros
00:04:02
Y
00:04:06
Local
00:04:08
Date
00:04:11
.now
00:04:12
¿Sí?
00:04:13
Emp 2
00:04:20
Bueno, Emp de 0
00:04:21
El 1
00:04:22
Y el 2
00:04:28
Esto es un gerente
00:04:31
Que le ponemos
00:04:35
También
00:04:37
500 euros de bonus
00:04:38
¿Vale?
00:04:40
Y este de aquí
00:04:42
Es otro empleado
00:04:43
Pero le damos solo el nombre
00:04:45
Entonces, al final
00:04:47
El coste debería ser
00:04:51
Dos, cuatro, cinco mil
00:04:54
Cinco mil quinientos
00:04:55
A ver si es verdad
00:04:56
No lo he escrito
00:04:59
Ah, tengo que crear el departamento
00:05:02
O sea que ahora pillo todo esto
00:05:08
Y creo el departamento tres
00:05:11
Que se crea con un departamento
00:05:16
Donde le paso aquí
00:05:21
Emp
00:05:22
Y ahora lo lanzo
00:05:23
El departamento tres
00:05:28
Vale, perfecto
00:05:29
Esto funciona fenomenal
00:05:32
¿Sí?
00:05:34
Fijaos que me funciona también
00:05:50
Salario de departamento 2
00:05:52
Eso que no obstante haya puesto empleado de gerentes
00:05:53
Pues me aplica el coste
00:05:56
Correctamente
00:05:58
Al empleado o al gerente
00:06:00
¿Vale?
00:06:01
Y ahora es el momento
00:06:03
De hacerlo explotar
00:06:13
Por ejemplo
00:06:14
Y lo lanzamos
00:06:17
¡Bum!
00:06:24
Porque mi programación muy mala no ha comprobado nunca si hay posiciones nul en este lugar, porque he asumido que nunca las hay, en vez de así poder verla.
00:06:27
Entonces vamos a resolver esto en departamento.
00:06:49
esto pasa aquí vale cuando yo intento acceder a estas cosas y es nul vale entonces aquí me
00:06:53
pregunto si empleados de i es not null entonces hace esto lo mismo aquí vale
00:07:05
Yo intentaré hacer esto
00:07:24
Solo si
00:07:29
If
00:07:30
Empleados
00:07:31
De i
00:07:35
Es not null
00:07:36
Entonces hace esta cosa aquí
00:07:38
Si no, no
00:07:43
Ahora ya no debería explotar
00:07:44
No hay plata
00:07:48
También antes
00:07:49
Que ahora no me acuerdo donde
00:07:55
Ah, sí
00:07:56
Habíamos dicho
00:07:57
¿Y si quitaba esto?
00:07:58
Veis que aquí
00:07:59
No hay errores
00:08:06
Pero ahora cuando lo lanzo
00:08:07
Class Cast Exception
00:08:09
¿Vale?
00:08:12
Estoy intentando
00:08:13
Empleado no puede ser
00:08:14
Casteado, no se puede transformar
00:08:18
En un gerente
00:08:20
Porque un empleado no es un gerente
00:08:21
Entonces esto no lo puede hacer
00:08:23
¿Vale?
00:08:25
Por eso está este if
00:08:27
¿Dudas?
00:08:28
Vale, hemos probado
00:08:33
Gerente, gerente función
00:08:35
Departamento, departamento funciona
00:08:37
Vamos adelante con el ejercicio
00:08:40
Veis que de todas formas el ejercicio no es
00:08:42
Una cosa súper
00:08:46
Compleja, al menos por ahora
00:08:48
Pero sí que esta cosa
00:08:49
De la herencia
00:08:52
De vez en cuando sale, ¿vale?
00:08:52
Esta cosa aquí ha salido
00:08:56
A raíz de la herencia
00:08:58
El este de aquí
00:08:59
¿Dónde está? Esto ha salido
00:09:01
Gracias a la herencia
00:09:03
Etcétera, etcétera, etcétera, ¿vale?
00:09:05
Crear una clase empresa
00:09:09
Vale
00:09:11
New
00:09:14
Class
00:09:16
Empresa
00:09:17
Probablemente es la que tiene el main, ¿vale?
00:09:19
Esta será la que gestiona todo
00:09:25
¿Qué tiene la clase empresa?
00:09:26
Un array de departamentos
00:09:29
Entonces aquí
00:09:31
Yo tengo departamento, porque es igual a nada.
00:09:37
Tendré que crear un constructor.
00:09:50
Public Empresa de Departamento y Dis.Empresa
00:09:53
Y tengo un método para calcular el salario total de la empresa
00:10:11
public
00:10:20
double
00:10:23
salario
00:10:24
total
00:10:27
como se calculará el salario
00:10:28
total de la empresa
00:10:31
con un for
00:10:32
int salario total
00:10:40
double salario
00:10:43
total es igual a 0
00:10:46
return salario
00:10:48
total
00:10:50
for
00:10:51
Int
00:10:53
Contador
00:10:58
Es igual a 0
00:11:01
Contador menor que
00:11:02
Empresa.lang
00:11:04
Contador
00:11:11
Más más
00:11:14
Que hago
00:11:18
Empresa.di
00:11:20
Punto
00:11:29
Salario
00:11:30
De dos
00:11:36
¿Y qué hago con esto?
00:11:37
¿Sí?
00:11:47
Sumo dentro
00:11:49
Acumulo dentro de
00:11:50
Salario, tiempo total
00:11:52
¿Vale?
00:11:54
Lo que me devuelve a estos
00:11:56
Contador
00:11:58
Es la empresa
00:11:59
En posición contador
00:12:03
Y llamo el método que me dice
00:12:04
Cuánto costa ese departamento
00:12:06
¿Vale?
00:12:08
En concreto estos
00:12:09
Más que empresas serían departamentos
00:12:10
Refactor
00:12:13
Refactor
00:12:18
Departamentos
00:12:19
¡Voilá!
00:12:23
La empresa tiene dentro todos los departamentos
00:12:26
¿Vale?
00:12:29
Y hacer a todos los departamentos
00:12:30
El departamento 0, 1, 2, 3, lo que haya
00:12:31
Y pido el precio a cada uno
00:12:34
El coste a cada uno
00:12:36
El coste a cada uno lo acumulo aquí
00:12:37
Y al final aquí dentro tendré el coste total
00:12:39
De mi empresa
00:12:42
Vale
00:12:43
Y ahora vamos a probarla
00:12:45
Me copio esta parte aquí
00:12:48
Donde creo los tres departamentos
00:12:52
Vale
00:12:56
Que así puedo hacer un array de departamentos
00:13:03
Departamento array deputes
00:13:07
Es igual
00:13:13
A
00:13:16
New
00:13:17
Departamentos
00:13:18
Departamento
00:13:21
De tres
00:13:22
Tres departamentos distintos
00:13:24
El primer departamento es esto
00:13:26
Dept
00:13:29
S
00:13:32
D0
00:13:34
Esto no me interesa
00:13:36
He copiado el código de antes
00:13:39
tengo que crear 3 departamentos
00:13:43
lo estoy probando, esto es para pruebas
00:13:47
para pruebas hacedlo cuando queráis
00:13:50
necesito una red de departamentos
00:13:51
para hacer una red de departamentos me creo
00:13:53
una red de 3 departamentos
00:13:55
y luego me creo 3 departamentos
00:13:57
como los tenía creados
00:13:59
de la
00:14:00
prueba que he hecho antes
00:14:02
pues me he copiado estos directamente
00:14:05
para no crear
00:14:06
otra vez 3 nuevos
00:14:09
vale
00:14:10
de alguna forma lo hago rápido
00:14:11
Y luego después os dejo mirarlo
00:14:14
Y esta es parte toda la que escribía en pantalla
00:14:16
No me interesa
00:14:22
Esto de aquí
00:14:23
Lo necesito
00:14:28
Y este de aquí
00:14:31
En mi depth
00:14:33
Vale, entonces
00:14:34
Me he creado un array de departamentos
00:14:43
¿Vale? Utilizando lo que teníamos antes
00:14:45
El primer departamento
00:14:48
¿Cómo lo hago? Con un nuevo departamento
00:14:49
Con un empleado solo
00:14:51
Este empleado de aquí
00:14:52
vale, fenomenal
00:14:54
el segundo departamento
00:14:56
es un nuevo departamento
00:14:58
y le he pasado
00:15:00
otro empleado
00:15:01
entonces estos dos departamentos tienen un empleado
00:15:04
solo, y luego
00:15:07
el tercero, he creado
00:15:08
un array de empleados
00:15:10
donde le he puesto
00:15:12
dentro tres empleados
00:15:14
un empleado, un gerente y un null
00:15:16
para hacer pruebas
00:15:18
y lo que he hecho es crear
00:15:19
Un departamento
00:15:22
Pasándole la red de empleados
00:15:23
Así estoy probando todos los
00:15:26
Constructores que tengo
00:15:28
Si
00:15:29
Y ahora
00:15:32
La parte nueva
00:15:34
Que es
00:15:35
Empresa
00:15:37
Es igual a
00:15:38
New empresa
00:15:41
Al que le paso
00:15:43
Depths
00:15:45
O sea estoy pasando
00:15:47
A la empresa
00:15:53
Emp ya existe
00:15:55
sí entonces empresa mientras creo una empresa mía al que le pasó como constructor una red
00:15:56
de departamentos que es el que he creado aquí para hacer mi prueba y ahora si yo mi empresa punto
00:16:06
Esto me debería llamar el salario de cada departamento, sumarlo todo y darme el coste
00:16:22
total de mi empresa, 6700 euros. Tampoco me cuesta mucho.
00:16:35
Vale, y yo aquí me paro.
00:17:12
- Autor/es:
- Stefano Chiesa
- Subido por:
- Stefano C.
- Licencia:
- Reconocimiento - No comercial
- Visualizaciones:
- 9
- Fecha:
- 24 de enero de 2023 - 14:15
- Visibilidad:
- Clave
- Centro:
- IES ROSA CHACEL
- Duración:
- 17′ 17″
- Relación de aspecto:
- 1.78:1
- Resolución:
- 1280x720 píxeles
- Tamaño:
- 144.54 MBytes