1
00:00:00,150 --> 00:00:00,810
Continuamos.

2
00:00:00,840 --> 00:00:04,710
Pero primero voy a arreglar un detalle nada importante, pero un tema de nombre.

3
00:00:04,770 --> 00:00:10,240
Acá puse dividendo, pero en realidad es denominador o divisor cualquiera de los dos.

4
00:00:10,390 --> 00:00:17,550
Entonces divisor de acá, bueno, divisor también de acá también.

5
00:00:19,290 --> 00:00:22,690
Un detalle es lo siguiente crear otro método, una sobrecarga.

6
00:00:22,710 --> 00:00:28,080
También dividir, pero que pasemos dos string en vez de dos entero y convertir.

7
00:00:28,140 --> 00:00:33,030
Por lo tanto, en el proceso de convertir de un string numérico a un entero, también podría lanzar

8
00:00:33,120 --> 00:00:33,870
otra acepción.

9
00:00:34,250 --> 00:00:38,460
La idea es que este nuevo método va a lanzar o podría lanzar dos.

10
00:00:38,580 --> 00:00:43,980
Se fijan dos excepciones para propagar un cierto al método main o al método que invoque este método

11
00:00:44,130 --> 00:00:44,850
método dividir.

12
00:00:45,180 --> 00:00:46,750
Pero bien es bastante parecido.

13
00:00:47,070 --> 00:00:47,940
Entonces.

14
00:00:48,120 --> 00:00:51,570
Public double.

15
00:00:52,890 --> 00:00:53,640
Dividir

16
00:00:56,730 --> 00:00:57,540
el numerador

17
00:01:01,590 --> 00:01:02,310
y el divisor.

18
00:01:02,490 --> 00:01:02,780
Pero bien.

19
00:01:02,880 --> 00:01:05,220
Acá tienen que convertir con el par Saint ambos.

20
00:01:05,560 --> 00:01:07,620
Entonces int num.

21
00:01:07,950 --> 00:01:11,760
Igual integer punto par saint.

22
00:01:12,060 --> 00:01:15,180
Porque tenemos el parsec y colocamos el numerador.

23
00:01:18,900 --> 00:01:22,410
INT El divisor lo vemos.

24
00:01:23,670 --> 00:01:24,660
Pero qué colocamos?

25
00:01:24,780 --> 00:01:25,380
Divisor.

26
00:01:27,900 --> 00:01:28,100
Bueno.

27
00:01:28,260 --> 00:01:29,910
Y podríamos aprovechar este método.

28
00:01:30,010 --> 00:01:30,510
No cierto?

29
00:01:30,630 --> 00:01:31,140
10.

30
00:01:31,770 --> 00:01:32,490
Punto.

31
00:01:32,640 --> 00:01:33,270
Dividir.

32
00:01:33,390 --> 00:01:34,980
Pero pasando los enteros.

33
00:01:35,220 --> 00:01:36,450
Porque ya lo tenemos convertido.

34
00:01:36,570 --> 00:01:38,370
Entonces acá pasamos el num.

35
00:01:39,180 --> 00:01:40,620
Coma div.

36
00:01:41,790 --> 00:01:42,330
Se fijan.

37
00:01:42,480 --> 00:01:42,750
Y acá.

38
00:01:42,760 --> 00:01:43,010
Bueno.

39
00:01:43,140 --> 00:01:44,070
Marca un error.

40
00:01:44,200 --> 00:01:44,400
Bueno.

41
00:01:44,490 --> 00:01:48,450
Lo primero tenemos que retornar acá porque retorna un doble.

42
00:01:48,690 --> 00:01:49,650
Este método redon a un doble.

43
00:01:49,740 --> 00:01:50,220
Pero a pesar.

44
00:01:50,220 --> 00:01:55,350
Igualmente retorna un error porque está lanzando división por ser aceptada.

45
00:01:55,680 --> 00:01:57,210
Entonces acá lo tenemos que propagar.

46
00:01:57,360 --> 00:01:57,820
Se fijan?

47
00:01:57,840 --> 00:02:00,300
Tenemos que agregar esta sección en la firma el método.

48
00:02:00,450 --> 00:02:01,770
Podríamos hacer un clic acá.

49
00:02:01,860 --> 00:02:06,990
O lo hacemos manual pero en forma automática, agrega el Froot División por cero Exception.

50
00:02:07,170 --> 00:02:07,740
Como acá.

51
00:02:07,830 --> 00:02:08,370
Ya está bien.

52
00:02:08,670 --> 00:02:09,060
Se fijan.

53
00:02:09,120 --> 00:02:10,350
Entonces invocamos este método.

54
00:02:10,500 --> 00:02:11,350
Acá ocurre el error.

55
00:02:11,430 --> 00:02:11,970
Septo.

56
00:02:12,330 --> 00:02:12,780
Por lo tanto.

57
00:02:12,780 --> 00:02:13,590
Como lo estamos llamando.

58
00:02:13,600 --> 00:02:16,320
También podría ocurrir este método y lo propagamos.

59
00:02:16,380 --> 00:02:19,920
Pero además podría manejar el error del parse int.

60
00:02:20,160 --> 00:02:22,430
Acá se fijan con un traje, un cacho.

61
00:02:23,010 --> 00:02:29,880
Pero para eso necesitamos una clase de recepción personalizada propia para manejar la conversión del

62
00:02:29,880 --> 00:02:31,680
entero en Nandez Formas Deception.

63
00:02:32,160 --> 00:02:34,500
Entonces vamos a crear una nueva clase acá.

64
00:02:34,590 --> 00:02:35,310
Decepción.

65
00:02:36,440 --> 00:02:46,610
Le vamos a llamar número, formato o formato número exception, formato número en español, excepto

66
00:02:47,690 --> 00:02:50,330
bien y vamos a heredar de la clase ecepto.

67
00:02:53,690 --> 00:02:55,770
Vamos a implementar el método del padre.

68
00:02:56,090 --> 00:02:59,540
Entonces haga clic Derecho Generai Constructor.

69
00:03:00,660 --> 00:03:02,790
Está acá con el mensaje OK.

70
00:03:03,810 --> 00:03:04,850
Y listo, ya lo tenemos.

71
00:03:05,210 --> 00:03:13,550
Muy simple, volvemos entonces calculadora y la idea es convertir en number format exception que lanza

72
00:03:13,670 --> 00:03:17,750
en caso de que el estric no sea numérico, lánzale error.

73
00:03:17,750 --> 00:03:18,260
No aceptó.

74
00:03:18,800 --> 00:03:24,920
Entonces lo vamos a convertir a un tipo checked a nuestra propia clase formato número septón.

75
00:03:25,550 --> 00:03:32,450
Entonces, finalmente convertimos una excepción al checked en una Checker y así obligamos y somos más

76
00:03:32,450 --> 00:03:37,490
estrictos para que la manejemos con el trait Catch nos obliga a manejarla con el trait Catch y nos obliga

77
00:03:37,490 --> 00:03:44,660
también a declararla en la firma el método o re lanzarla o propagarla como le queramos llamar trae.

78
00:03:48,130 --> 00:03:55,690
Catch number fórmate septón en inglés, no septo, esta acepción que se podría lanzar en el Saint en

79
00:03:55,690 --> 00:03:59,830
caso de que ocurra un error en fija frus number, fórmate septón.

80
00:04:01,810 --> 00:04:11,200
E Y acá lanzamos el error frus new formato, número, escepcion.

81
00:04:12,100 --> 00:04:13,400
Nuestra clase personalizada.

82
00:04:23,530 --> 00:04:24,040
Perfecto.

83
00:04:24,610 --> 00:04:24,910
Bien.

84
00:04:25,030 --> 00:04:25,570
Dos cosas.

85
00:04:25,690 --> 00:04:29,080
Lo primero, tenemos que mover el ratón dentro del TRIE.

86
00:04:29,260 --> 00:04:30,360
Por supuesto, acá.

87
00:04:30,580 --> 00:04:32,350
Entonces lo cortamos y lo movemos.

88
00:04:32,670 --> 00:04:33,790
Tiene que estar dentro de contexto.

89
00:04:34,180 --> 00:04:35,080
Un cierto si todo sale bien.

90
00:04:35,110 --> 00:04:37,180
Bueno, hace la división y retorna.

91
00:04:37,210 --> 00:04:38,740
Si no, lanza la excepción.

92
00:04:39,130 --> 00:04:44,080
Y luego acá otro error, porque tenemos que enviar o declarar.

93
00:04:44,080 --> 00:04:46,240
No acepto esta acepción en la firma.

94
00:04:46,240 --> 00:04:46,720
El método.

95
00:04:47,440 --> 00:04:50,050
Entonces acá coma en el cero coma.

96
00:04:51,190 --> 00:04:58,080
De hecho, voy a bajar acá, podríamos bajar, pequé mejor y acá formato y listo.

97
00:04:58,330 --> 00:04:59,410
Ahí lo tenemos implementado.

98
00:05:00,310 --> 00:05:05,380
Entonces este dividir retorna una sola, ya que recibe solamente dos entero.

99
00:05:05,560 --> 00:05:07,000
Y si el divisor es cero?

100
00:05:07,040 --> 00:05:10,710
Bueno, lanza la excepción, pero ésta podrá el hacer two.

101
00:05:11,170 --> 00:05:16,510
Al tratar de convertir a entero los estric o bien si falla el otro.

102
00:05:16,510 --> 00:05:16,900
Dividir.

103
00:05:17,050 --> 00:05:18,010
Cuando diga por cero.

104
00:05:19,600 --> 00:05:20,290
Vamos a probar.

105
00:05:20,950 --> 00:05:22,120
Vamos a ejemplo escepción.

106
00:05:23,250 --> 00:05:23,880
Por acá.

107
00:05:24,940 --> 00:05:29,740
Vamos a tener acá otro ejemplo, podría mantener el que tenemos, pero acá otro más.

108
00:05:29,890 --> 00:05:31,330
Entonces División 2.

109
00:05:35,320 --> 00:05:36,160
División 2.

110
00:05:36,730 --> 00:05:37,510
Calculadora.

111
00:05:37,600 --> 00:05:38,260
Punto.

112
00:05:38,560 --> 00:05:39,460
El que recibe String.

113
00:05:40,030 --> 00:05:44,350
Entonces, por ejemplo, 10 y 5.

114
00:05:44,500 --> 00:05:49,000
Por poner ejemplo, ya que uno marca un error y está bien, está bien por qué?

115
00:05:49,150 --> 00:05:52,960
Por qué acá no está pidiendo que manejemos una excepción que no lo estamos manejando?

116
00:05:53,410 --> 00:05:54,610
Formato número escepción.

117
00:05:54,970 --> 00:05:56,700
Recuerde que este método lanza dos excepciones.

118
00:05:56,830 --> 00:05:58,630
Una división por cero.

119
00:05:58,870 --> 00:06:02,290
Y la segunda que lanza formato número excepción.

120
00:06:02,410 --> 00:06:05,980
Se fijan entonces acá tenemos que manejar otro catch.

121
00:06:06,370 --> 00:06:09,220
Entonces por acá, después de Ámber Format Deception.

122
00:06:10,730 --> 00:06:14,670
Catch Formato un número acepcion.

123
00:06:15,370 --> 00:06:15,610
Eh?

124
00:06:15,950 --> 00:06:18,710
Bueno, que queramos y acá la manejamos.

125
00:06:18,830 --> 00:06:19,880
Entonces Shout

126
00:06:25,010 --> 00:06:27,560
se detectó una excepción ingreso un número valida

127
00:06:33,700 --> 00:06:36,170
e punto Get Masetto.

128
00:06:38,170 --> 00:06:47,680
Lo siguiente para dar más detalle también podríamos invocar el método Print Stack 3 es da forma esa

129
00:06:48,160 --> 00:06:56,290
de forma automática se imprime en el terminal, en la consola o bien de forma explícita septem punto

130
00:06:56,350 --> 00:06:59,140
out indicamos la salida.

131
00:06:59,320 --> 00:07:04,060
En este caso la consola 7.12 en la consola, entonces se va a imprimir en el terminal.

132
00:07:05,690 --> 00:07:11,030
Faltó Sotheby División 2 bien levantamos.

133
00:07:14,270 --> 00:07:18,500
Bueno, este es otro ejemplos cero o vamos a colocar dos mejor.

134
00:07:18,800 --> 00:07:19,340
Perfecto.

135
00:07:19,490 --> 00:07:24,230
División 2 2.0 Así que está bien ahora, para qué no pide esto?

136
00:07:24,890 --> 00:07:32,390
O incluso vamos a comentar el primer ejemplo está acá el División 20, un poco más ordenado acá.

137
00:07:33,900 --> 00:07:39,300
Comentamos acá y comentamos acá, de hecho, el valor es del tipo string.

138
00:07:40,170 --> 00:07:43,500
Entonces podremos colocar o lo puedo modificar de la siguiente forma.

139
00:07:43,980 --> 00:07:47,100
Ingrese un entero, por ejemplo, denominador.

140
00:07:50,820 --> 00:07:52,290
De acá denominador.

141
00:07:54,860 --> 00:07:56,660
Vamos a copiar esto y lo mismo.

142
00:08:02,550 --> 00:08:04,100
Numerador o divisor?

143
00:08:08,550 --> 00:08:11,340
Entonces denominador y acá.

144
00:08:12,250 --> 00:08:13,150
O perdón acá.

145
00:08:14,660 --> 00:08:18,380
Denominador y el numerador y Dhaka?

146
00:08:20,720 --> 00:08:25,400
Entonces, numerador y divisor, el divisor es el denominador.

147
00:08:25,680 --> 00:08:26,090
Lo vemos.

148
00:08:27,800 --> 00:08:31,970
Así lo ingresamos por Terminal, se fijan y esto lo comentamos del otro ejemplo.

149
00:08:37,260 --> 00:08:41,580
Entonces, el denominador con el cual dividimos, por ejemplo, 2.

150
00:08:43,060 --> 00:08:43,390
Ok.

151
00:08:44,320 --> 00:08:48,640
Y el numerador 10 10 dividido en dos, aunque está al revés.

152
00:08:49,480 --> 00:08:50,470
Mejor que lo cambiemos.

153
00:08:50,710 --> 00:08:54,130
Colocamos este arriba y abajo para que lo pida primero.

154
00:08:54,700 --> 00:08:55,640
Así que hemos ordenado.

155
00:08:56,590 --> 00:08:57,580
Volvemos a levantar.

156
00:08:59,430 --> 00:09:00,150
Ya numerador?

157
00:09:00,240 --> 00:09:00,780
10.

158
00:09:02,100 --> 00:09:02,520
2.

159
00:09:03,360 --> 00:09:03,900
Perfecto.

160
00:09:04,020 --> 00:09:04,740
Ningún error.

161
00:09:04,830 --> 00:09:05,490
Ningún problema.

162
00:09:06,270 --> 00:09:07,200
Volvemos a levantar.

163
00:09:08,190 --> 00:09:09,060
No creo que haga nada.

164
00:09:09,150 --> 00:09:09,600
Ok.

165
00:09:10,670 --> 00:09:12,620
Y en el denominador colocábamos.

166
00:09:12,650 --> 00:09:19,010
5 se fijan lanza la acepción seré toda una acepción ingreso el número valio.

167
00:09:20,700 --> 00:09:27,780
Entonces entra acá formato número, excepto por qué trata de convertir entonces de ingresar un número

168
00:09:27,870 --> 00:09:29,250
en el numerador y divisor.

169
00:09:30,650 --> 00:09:35,240
Se fijan si revisamos la acepción formato número acá, perdón.

170
00:09:35,360 --> 00:09:40,760
Acá de ingresar un número en el numerador y divisor cuando lanzamos la acepción.

171
00:09:40,910 --> 00:09:43,640
Este es el mensaje y acá lo está mostrando.

172
00:09:43,760 --> 00:09:44,780
Se fijan con el detalle.

173
00:09:45,650 --> 00:09:48,600
Luego tenemos la traza, el print stack 3.

174
00:09:49,410 --> 00:09:51,080
Entonces imprime toda la traza.

175
00:09:51,260 --> 00:09:52,370
De dónde comienza?

176
00:09:52,490 --> 00:09:55,460
Bueno, primero la excepción que se lanza con el mensaje.

177
00:09:55,760 --> 00:09:56,420
Eso es lo primero.

178
00:09:56,690 --> 00:10:03,280
Lo segundo, el recorrido donde se origina en el método dividir calculadora línea 19.

179
00:10:03,420 --> 00:10:10,910
Entonces, con todo lujo detalle acá ocurra en esta línea con el formato de los estric no se pueden

180
00:10:10,910 --> 00:10:14,200
convertir entero, ya que no es numérico el valor del string.

181
00:10:15,620 --> 00:10:20,300
Y luego tenemos la clase con el método Main, que es donde se invoca el dividís acá.

182
00:10:21,230 --> 00:10:24,260
Hacemos un click, por ejemplo, acá calculadora, dividir.

183
00:10:25,410 --> 00:10:30,450
Entonces el la traza completa o el recorrido o la pila donde ocurre esta acepción.

184
00:10:30,690 --> 00:10:34,290
Acá comienza la invocación del mero vivir, pero en el método dividir.

185
00:10:34,380 --> 00:10:36,580
Ocurre el error en la línea 19.

186
00:10:36,900 --> 00:10:37,980
Clase calculadora.

187
00:10:38,490 --> 00:10:41,340
Acá tenemos toda la traza, incluso para este ejemplo.

188
00:10:41,580 --> 00:10:43,920
Como lo modificamos y esto lo tenemos comentado.

189
00:10:44,040 --> 00:10:44,430
Bueno.

190
00:10:44,700 --> 00:10:46,650
Podríamos quitar incluso este cacho.

191
00:10:46,860 --> 00:10:47,460
Se fijan.

192
00:10:47,760 --> 00:10:48,540
Estaría además.

193
00:10:48,630 --> 00:10:54,630
Y dejar solamente formato un número septón y división por ser acepten nuestras dos clases personalizadas

194
00:10:55,020 --> 00:10:59,370
y hasta comentada porque el par sait lo quitamos de este ejemplo.

195
00:10:59,460 --> 00:11:00,030
Pero da lo mismo.

196
00:11:00,030 --> 00:11:01,710
Lo pueden dejar o lo podemos quitar.

197
00:11:01,800 --> 00:11:03,480
Todo depende si vamos a dejar este código.

198
00:11:03,540 --> 00:11:07,410
Por ejemplo, si queremos dejar solamente esta forma.

199
00:11:08,160 --> 00:11:09,180
Esto ya lo podemos quitar.

200
00:11:10,890 --> 00:11:18,960
Esto también nos lo estamos ocupando y dejamos solamente dividir los números hattrick y este método

201
00:11:19,140 --> 00:11:22,320
se encarga de la conversión y de lanzar las excepciones.

202
00:11:22,740 --> 00:11:24,090
O bien lo pones como estaba.

203
00:11:24,240 --> 00:11:24,750
Da lo mismo.

204
00:11:24,950 --> 00:11:26,910
Continuamos en la siguiente clase.
