1
00:00:00,300 --> 00:00:04,740
Continuamos con los enum o numeradores, que básicamente son parecido a las clases.

2
00:00:04,890 --> 00:00:10,410
Es una estructura que contiene valores constantes, es decir, atributos del tipo final.

3
00:00:10,470 --> 00:00:13,260
Pero varios ideal, por ejemplo, para los colores.

4
00:00:13,410 --> 00:00:19,080
Entonces la idea es modificar nuestro ejemplo que tenemos con constantes, con los colores del auto

5
00:00:19,200 --> 00:00:21,030
y llevar esto a numeradores.

6
00:00:21,150 --> 00:00:23,670
Pero antes acá me faltó rojo.

7
00:00:23,730 --> 00:00:24,330
Un detalle.

8
00:00:24,600 --> 00:00:28,380
Entonces bueno, automóvil, punto color rojo.

9
00:00:30,090 --> 00:00:32,070
Ese talle me faltó de la clase anterior.

10
00:00:32,550 --> 00:00:35,190
Pero bien, continuemos entonces los enum.

11
00:00:35,550 --> 00:00:35,790
Bien.

12
00:00:35,850 --> 00:00:41,910
Vamos a crear un enum, un click derecho new yaba class y acá seleccionamos enum.

13
00:00:42,510 --> 00:00:45,180
Acá tenemos clases, interfaces e numeradores.

14
00:00:45,360 --> 00:00:47,520
Luego marcamos un nombre color.

15
00:00:48,810 --> 00:00:51,450
Bueno, igual que la clase comienza con mayúscula.

16
00:00:51,540 --> 00:00:56,910
Exactamente la misma nomenclatura, mismo estándar y palabra compuesta también se separan con mayúscula,

17
00:00:56,970 --> 00:00:59,740
con kamma, el CAIS y tipicamente en singular.

18
00:00:59,880 --> 00:01:02,910
Igual que las clases representan una sola entidad.

19
00:01:03,000 --> 00:01:03,960
Entonces color?

20
00:01:04,080 --> 00:01:04,490
Ok.

21
00:01:04,650 --> 00:01:05,280
La diferencia?

22
00:01:05,340 --> 00:01:14,130
Bueno, un public en vez de class es en un color, pero si se fijan public class automóvil acá es public

23
00:01:14,220 --> 00:01:15,300
en un color.

24
00:01:15,750 --> 00:01:23,460
Entonces un numerador es una colección de valores constantes o atributos constantes como estándar siempre

25
00:01:23,460 --> 00:01:24,030
con mayúsculas.

26
00:01:24,060 --> 00:01:25,090
Se escriben con mayúscula.

27
00:01:25,140 --> 00:01:28,470
Por ejemplo, rojo koma.

28
00:01:28,650 --> 00:01:31,050
Podemos escribir hacia el lado o hacia abajo.

29
00:01:31,110 --> 00:01:36,330
Queda mejor hacia abajo amarillo y así por a color azul.

30
00:01:42,150 --> 00:01:43,560
Y vamos a agregar naranjo.

31
00:01:43,800 --> 00:01:45,570
Y al final el punto y coma y listo.

32
00:01:45,960 --> 00:01:47,220
Acá tenemos el numerador.

33
00:01:47,370 --> 00:01:53,220
Bueno, un conjunto de constantes que a su vez el valor es el mismo nombre de la constante.

34
00:01:53,460 --> 00:01:57,480
Por lo tanto, el contenido de rojo es rojo en mayúscula.

35
00:01:57,630 --> 00:02:01,620
El contenido de la constante amarillo es amarillo y así por cada uno.

36
00:02:02,580 --> 00:02:03,300
Así de simple.

37
00:02:03,420 --> 00:02:04,800
Entonces ahora la podemos utilizar.

38
00:02:04,930 --> 00:02:08,490
Bueno, acá nos dice que no es necesario el punto y coma, no siempre.

39
00:02:08,940 --> 00:02:14,190
Después vamos a ver si queremos implementar, por ejemplo, un constructor o algún atributo para dar

40
00:02:14,190 --> 00:02:15,120
mayor funcionalidad.

41
00:02:15,210 --> 00:02:16,060
Después vamos a ver.

42
00:02:16,170 --> 00:02:17,430
Necesitamos el punto y coma.

43
00:02:17,520 --> 00:02:19,090
Pero por ahora ahí está bien.

44
00:02:19,410 --> 00:02:20,370
Ahora lo podemos utilizar.

45
00:02:21,750 --> 00:02:26,170
Entonces, bueno, tendremos que cambiar el tipo, porque acá el color es del tipo string.

46
00:02:26,790 --> 00:02:29,580
Tendré que ser del tipo color del numerador.

47
00:02:30,030 --> 00:02:30,570
Por qué?

48
00:02:30,600 --> 00:02:34,950
Por ejemplo, si quiero colocar acá el color blanco usando el enum.

49
00:02:36,360 --> 00:02:46,620
Bueno, uso primero el nombre color del numerador, entonces el color punto y acá el atributo constante

50
00:02:46,710 --> 00:02:52,860
o final se fijan, está en amarillo porque es un final, es un final con el nombre rojo y a su vez contiene

51
00:02:52,860 --> 00:02:59,250
el valor también rojo con el mismo nombre, entonces el nombre del atributo, pero también de su valor

52
00:02:59,730 --> 00:03:00,510
acá blanco.

53
00:03:02,430 --> 00:03:03,670
Se fijan acá marca error.

54
00:03:03,690 --> 00:03:04,200
Por qué?

55
00:03:04,650 --> 00:03:11,130
Por qué lo que asigna es del tipo color desde el tipo del numerador y requiere un tipo string?

56
00:03:11,400 --> 00:03:14,100
Entonces eso es lo que tenemos que modificar en la clase automóvil.

57
00:03:14,190 --> 00:03:16,410
Cambiar el tipo de auto del atributo color.

58
00:03:16,560 --> 00:03:16,920
Bien.

59
00:03:17,100 --> 00:03:19,380
Y se utiliza igual que una constante.

60
00:03:19,430 --> 00:03:21,330
Bueno, de hecho es una constante.

61
00:03:21,420 --> 00:03:24,210
Es un atributo estático y final.

62
00:03:24,480 --> 00:03:28,050
Entonces se accede con el nombre de la clase.

63
00:03:28,110 --> 00:03:35,220
Perdón del numerador color del en un punto el nombre de la constante o de la opción.

64
00:03:35,310 --> 00:03:39,660
En este caso, el color llega lo mismo color rojo.

65
00:03:42,070 --> 00:03:48,310
Se fijan y por cada uno color gris, marca error, pero no se preocupen, porque después lo vamos a

66
00:03:48,310 --> 00:03:48,760
cambiar.

67
00:03:50,350 --> 00:03:50,980
Color.

68
00:03:53,130 --> 00:03:55,340
Gris, acá, amarillo.

69
00:03:58,680 --> 00:03:59,700
Color amarillo.

70
00:03:59,760 --> 00:04:02,730
Faltaría acá color azul.

71
00:04:04,260 --> 00:04:06,930
Pero acá sería la patente color patente.

72
00:04:07,020 --> 00:04:08,220
Pero vamos a usar lo mismo.

73
00:04:08,690 --> 00:04:09,660
Y creo que estamos listos.

74
00:04:10,280 --> 00:04:16,080
Bien, entonces ahora nos vamos a automóvil y en vez de ese del tipo string color.

75
00:04:17,610 --> 00:04:18,930
Color es del tipo color.

76
00:04:19,950 --> 00:04:23,340
Y por defecto, color punto gris.

77
00:04:24,900 --> 00:04:31,630
Usando él el numerador color, color patente, también color en vez del tipo string.

78
00:04:34,190 --> 00:04:36,200
Color, punto naranjo.

79
00:04:37,070 --> 00:04:38,890
Se fijan y lo estamos parametrizar.

80
00:04:40,260 --> 00:04:43,680
Y cambia los tipos, los método jet set y constructor.

81
00:04:43,830 --> 00:04:45,900
Por ejemplo, en el constructor acá.

82
00:04:47,010 --> 00:04:47,580
E Co-lor.

83
00:04:49,750 --> 00:04:58,270
Acá también está el tipo color del numerador y este es el nombre del atributo o argumento el constructor.

84
00:05:01,110 --> 00:05:04,950
Recuerden que los nombre de enumeraré comienzan con mayúscula, igual que en las clases.

85
00:05:06,990 --> 00:05:17,820
Yeta quet color rotondo rotonda un tipo color, un enum set color asigna un color del tipo color y acá

86
00:05:17,820 --> 00:05:22,830
también guet color patente y set color patente.

87
00:05:26,350 --> 00:05:27,090
Y eso es todo.

88
00:05:30,640 --> 00:05:33,320
Nos vamos a ejemplo tomóvil acá, creo.

89
00:05:34,720 --> 00:05:40,660
Acá tenemos que cambiar porque lo teníamos con este link se guardan entonces para que no dé error,

90
00:05:40,840 --> 00:05:44,890
lo modificamos color, punto blanco.

91
00:05:54,760 --> 00:05:55,300
Gris.

92
00:05:59,920 --> 00:06:00,490
Y listo.

93
00:06:00,760 --> 00:06:01,390
Eso sería.

94
00:06:03,600 --> 00:06:06,410
Veamos qué más automóvil cree que está todo bien?

95
00:06:06,690 --> 00:06:08,340
Sí, color naranjo, color gris.

96
00:06:08,370 --> 00:06:09,060
Todo perfecto.

97
00:06:10,420 --> 00:06:11,110
Vamos a probar.

98
00:06:11,230 --> 00:06:12,220
Vamos a levantar.

99
00:06:15,140 --> 00:06:21,050
Si se fijan, el valor aparece con mayúscula, porque lleva el nombre de la constante.

100
00:06:22,320 --> 00:06:24,840
Azul se fija en gris y así.

101
00:06:25,410 --> 00:06:26,840
Azul, rojo.

102
00:06:28,260 --> 00:06:34,560
Blanco, pero también se podría personalizar para que no sea el mismo nombre que lleva la constante

103
00:06:34,620 --> 00:06:40,590
o el atributo, entonces para cambiar este con un valor más personalizado, para que sea rojo por ejemplo

104
00:06:40,710 --> 00:06:44,670
en minúscula, comenzando mayúscula, pero escrito en minúscula, igual que amarillo.

105
00:06:44,790 --> 00:06:46,980
Bueno, para eso voy a agregar punto y coma.

106
00:06:47,190 --> 00:06:53,670
Vamos a bajar y vamos a tener un atributo del tipo final private final.

107
00:06:53,730 --> 00:07:02,610
Pero no es estático, tiene que ser constante del tipo string color, porque acá vamos a guardar el

108
00:07:02,610 --> 00:07:05,130
color más personalizado o el nombre color.

109
00:07:05,220 --> 00:07:10,950
Entonces para eso necesitamos pasarlo acá como constructor, como argumento, pero para eso necesitamos

110
00:07:11,040 --> 00:07:11,730
un constructor.

111
00:07:12,210 --> 00:07:13,890
Entonces voy a crear un constructor.

112
00:07:14,780 --> 00:07:15,620
Con Giné doit?

113
00:07:16,870 --> 00:07:19,600
Constructor color y aparece color.

114
00:07:19,780 --> 00:07:20,730
Le colocamos OK.

115
00:07:21,370 --> 00:07:27,820
Y lo que hace es pasar el color por argumento y lo asigna al atributo, al atributo color que final.

116
00:07:27,940 --> 00:07:28,810
No se puede modificar.

117
00:07:28,870 --> 00:07:33,010
Es constante, pero es propio de la referencia del enum.

118
00:07:33,640 --> 00:07:35,110
Acá marca error y está bien.

119
00:07:35,140 --> 00:07:39,040
Por qué tenemos que pasar el valor del color del tipo string?

120
00:07:39,220 --> 00:07:41,320
Se fijan porque acá lo tenemos como tipo string.

121
00:07:41,890 --> 00:07:42,850
Esto es un argumento.

122
00:07:42,970 --> 00:07:49,360
Esto acá sería como invocar un constructor, pero el enumerar que lleva exactamente el mismo nombre

123
00:07:49,540 --> 00:07:53,830
que la clase, es decir que el numerador entonces acá rojo.

124
00:07:58,080 --> 00:08:00,000
Amarillo Yeezy por cada uno.

125
00:08:06,340 --> 00:08:08,140
Incluso acá puede ser gris oscuro.

126
00:08:10,330 --> 00:08:13,960
No podemos personalizar acá naranja.

127
00:08:15,700 --> 00:08:16,330
Se fijan.

128
00:08:17,220 --> 00:08:18,790
Y también podríamos tener mtodos yeta.

129
00:08:20,720 --> 00:08:21,860
Entonces, por acá generate?

130
00:08:22,980 --> 00:08:24,960
Getter Márcame co-lor.

131
00:08:25,900 --> 00:08:32,230
Parecía una clase, pero siempre los atributos son constantes, son del tipo final y por cada constante

132
00:08:32,320 --> 00:08:35,950
o opción le podemos dar un valor personalizado.

133
00:08:36,160 --> 00:08:37,930
Bueno, al final es un atributo.

134
00:08:37,990 --> 00:08:42,520
También podemos pasar más de un parámetro, pero para el caso el color con el nombre está bien.

135
00:08:42,640 --> 00:08:43,150
Perfecto.

136
00:08:43,270 --> 00:08:44,140
Más que suficiente.

137
00:08:44,230 --> 00:08:47,000
Pero también podemos tener varios parámetros o argumentos.

138
00:08:47,010 --> 00:08:54,640
separÃ por Koma y por cada uno una constante finar un atributo final y lo inicializamos en el constructor

139
00:08:54,730 --> 00:08:57,250
y lo pasamos acá por argumento con la coma.

140
00:08:57,820 --> 00:08:58,700
Entonces por cada uno.

141
00:08:58,930 --> 00:09:02,110
Entonces ahora en el ejemplo automóvil, no en el otro.

142
00:09:02,200 --> 00:09:08,560
En el Static este lo voy a cerrar en el Static acá donde se imprime, por ejemplo, el color patente.

143
00:09:09,070 --> 00:09:17,890
Si quiero el valor GT color o el nombre que le dimos personalizado que sería rojo con minúscula, se

144
00:09:17,890 --> 00:09:19,360
fijan gris oscuro.

145
00:09:19,480 --> 00:09:20,710
En fin, lo mismo acá.

146
00:09:21,840 --> 00:09:24,690
Claro, porque si levanto Batres mayúscula.

147
00:09:26,590 --> 00:09:29,860
Por ejemplo, acá azul, amarillo.

148
00:09:30,850 --> 00:09:31,570
Se fijan?

149
00:09:31,690 --> 00:09:32,140
Azul?

150
00:09:32,200 --> 00:09:32,500
Gris.

151
00:09:32,600 --> 00:09:33,700
Bueno, está en mayúscula.

152
00:09:34,800 --> 00:09:40,800
Excepto este último, lo pusimos en minúscula con el billete acá Jetró el patente, pero Calí invocamos

153
00:09:40,800 --> 00:09:42,330
el Wyeth color.

154
00:09:45,710 --> 00:09:50,570
Entonces, acá en detalle tendremos que ser algo parecido color, punto.

155
00:09:50,810 --> 00:09:51,350
Qué color?

156
00:09:51,440 --> 00:09:52,730
Y lo mismo color patente.

157
00:09:53,090 --> 00:09:53,660
Punto.

158
00:09:53,800 --> 00:09:54,080
Guet.

159
00:09:54,080 --> 00:09:54,470
Color.

160
00:09:55,480 --> 00:09:58,840
Y ahora sí que si volvemos, levantamos.

161
00:10:00,180 --> 00:10:01,230
Iba a estar todo minuscula.

162
00:10:02,210 --> 00:10:03,560
Se fijan todo minuscula.

163
00:10:03,860 --> 00:10:07,580
Ya está bien parametrizar utilizando enum.

164
00:10:08,390 --> 00:10:09,800
Ahora, qué pasa si hago lo siguiente?

165
00:10:10,010 --> 00:10:11,540
Vuelvo automóvil.

166
00:10:12,020 --> 00:10:17,750
Voy a quitar el color y también acá también lo quito acá.

167
00:10:18,830 --> 00:10:19,670
Perfecto.

168
00:10:20,060 --> 00:10:22,940
Bueno, obviamente levantamos y en mayúscula.

169
00:10:24,120 --> 00:10:27,000
Tal como lo teníamos ahora, qué pasa si voy al enum?

170
00:10:28,720 --> 00:10:29,480
Clic derecho.

171
00:10:29,500 --> 00:10:30,130
Generar.

172
00:10:31,600 --> 00:10:32,200
Tu estric?

173
00:10:33,750 --> 00:10:34,220
Color.

174
00:10:36,340 --> 00:10:43,450
Pero solamente que retorne el color nada más o dicho color, esto lo quito, disputo color.

175
00:10:45,310 --> 00:10:52,270
Bueno, como es el tuit Streak, cuando se imprima el enum al finalmente va a mostrar esta representación

176
00:10:52,660 --> 00:10:54,820
por defecto muestra en mayúscula.

177
00:10:55,120 --> 00:11:00,760
Pero si cambiamos o implementamos el toString que va a mostrar todo acá, el valor que le dimos.

178
00:11:03,140 --> 00:11:03,980
Levantamos.

179
00:11:05,250 --> 00:11:08,740
Y de forma automática, transparente, solamente con tus strength.

180
00:11:09,310 --> 00:11:16,180
Ahora parece bien y me siento en mayúscula, pero lo demás en minúscula, que sería el valor que le

181
00:11:16,180 --> 00:11:17,860
dimos a la constante color.

182
00:11:18,430 --> 00:11:25,780
Se fija gris oscuro, ya no es gris, sino el gris oscuro, azul, la patente rojo blanco.

183
00:11:27,260 --> 00:11:31,010
Otra forma de implementar un conjunto de valores constante.

184
00:11:31,930 --> 00:11:35,530
Similar a como lo teníamos acá anteriormente, con pura constante.

185
00:11:36,070 --> 00:11:42,220
Bueno, son dos forma que lo podemos implementar, pero con el numerador queda más acoplado y más ordenado.

186
00:11:42,310 --> 00:11:49,360
Queda en una estructura, en un numerador separado de la clase automóvil se fijan que un poco más organizado,

187
00:11:49,450 --> 00:11:51,700
pero cualquiera de las dos formas estaría correcto.

188
00:11:51,880 --> 00:11:55,030
Ahora, sin duda con un enum sin duda queda mejor.

189
00:11:55,210 --> 00:12:01,210
Y recuerden que el toString es para dar una representación al valor de cada constante y le indicamos

190
00:12:01,210 --> 00:12:06,040
que sea el color o este nombre que estaba pasando o este valor que estamos pasando por argumento.

191
00:12:06,220 --> 00:12:06,520
Bien.

192
00:12:06,670 --> 00:12:08,680
Continuamos en la siguiente clase.
