1 00:00:00,180 --> 00:00:06,839 entonces hemos hecho esta primera clase esta clase en la clase bicicleta dentro hemos decidido que 2 00:00:06,839 --> 00:00:13,460 tenga estos parámetros de aquí vale estos son los atributos de la clase entonces yo me espero 3 00:00:13,460 --> 00:00:21,300 que cada objeto de la clase bicicleta tenga dentro estos parámetros de aquí y luego veremos algunos 4 00:00:21,300 --> 00:00:29,379 métodos para que la bicicleta haga algo vale ok fenómeno vamos a empezar hemos dicho ahora que 5 00:00:29,379 --> 00:00:31,440 Íbamos a hacer lo que se llama un constructor 6 00:00:31,440 --> 00:00:33,359 Un constructor es un método especial 7 00:00:33,359 --> 00:00:35,259 Cuyo objetivo es 8 00:00:35,259 --> 00:00:37,119 Crear un objeto de esta clase 9 00:00:37,119 --> 00:00:38,759 Una instancia de esta clase 10 00:00:38,759 --> 00:00:40,820 Un objeto particular que tendrá 11 00:00:40,820 --> 00:00:42,479 Estos cuatro valores 12 00:00:42,479 --> 00:00:45,140 O sea, cuatro atributos instanciados 13 00:00:45,140 --> 00:00:46,179 A determinados valores 14 00:00:46,179 --> 00:00:49,520 Entonces, ¿cómo se hace un constructor? 15 00:00:50,679 --> 00:00:51,320 Public 16 00:00:51,320 --> 00:00:53,460 Y el nombre de la clase 17 00:00:53,460 --> 00:01:02,329 Dentro de esos conceptos 18 00:01:02,329 --> 00:01:04,730 El constructor 19 00:01:04,730 --> 00:01:05,849 Es parte de la clase 20 00:01:05,849 --> 00:01:07,790 Es un método especial 21 00:01:07,790 --> 00:01:10,150 Entre comillas, porque yo aquí me esperaría algo 22 00:01:10,150 --> 00:01:12,230 Void, int 23 00:01:12,230 --> 00:01:13,170 ¿No? 24 00:01:13,310 --> 00:01:14,769 Un método cualquiera 25 00:01:14,769 --> 00:01:18,390 Aparte el static, que por ahora lo dejamos por un lado 26 00:01:18,390 --> 00:01:20,450 Y aquí, si quisiera hacer 27 00:01:20,450 --> 00:01:21,629 Este método de aquí 28 00:01:21,629 --> 00:01:23,510 El método bicicleta, pues 29 00:01:23,510 --> 00:01:25,769 Puede hacer el método bicicleta 30 00:01:25,769 --> 00:01:27,090 ¿Por qué me marca esto? 31 00:01:27,189 --> 00:01:29,450 Ah, porque tiene que devolver un entero, entonces 32 00:01:29,450 --> 00:01:30,629 Return 33 00:01:30,629 --> 00:01:32,709 7, ya está 34 00:01:32,709 --> 00:01:33,750 Return 35 00:01:33,750 --> 00:01:36,689 Ya está, he hecho un método 36 00:01:36,689 --> 00:01:37,230 ¿Vale? 37 00:01:37,870 --> 00:01:39,810 ¿Qué método hace esto? Pues un método inútil 38 00:01:39,810 --> 00:01:41,849 Yo lo llamo, se llama bicicleta 39 00:01:41,849 --> 00:01:43,170 Pues me rende 7, ¿vale? 40 00:01:43,290 --> 00:01:46,049 Siempre, porque esto solo devuelve 7 41 00:01:46,049 --> 00:01:47,609 Entonces es un método inútil 42 00:01:47,609 --> 00:01:48,750 Pero esto sería un método 43 00:01:48,750 --> 00:01:51,390 Un constructor no tiene esto 44 00:01:51,390 --> 00:01:54,390 ¿Por qué no tiene esto? 45 00:01:58,299 --> 00:01:59,939 Sabéis que cuando yo hago un método 46 00:01:59,939 --> 00:02:02,040 Un método es como 47 00:02:02,040 --> 00:02:03,920 Por ahora yo pongo siempre public 48 00:02:03,920 --> 00:02:06,019 Static a veces 49 00:02:06,019 --> 00:02:10,340 Esto entenderemos dentro de un rato 50 00:02:10,340 --> 00:02:11,539 Para que sirve 51 00:02:11,539 --> 00:02:14,939 Luego un tipo retorno 52 00:02:14,939 --> 00:02:17,819 Nombre 53 00:02:17,819 --> 00:02:20,120 Parámetros 54 00:02:20,120 --> 00:02:23,900 Esto es como declaro un método 55 00:02:23,900 --> 00:02:26,460 Este de aquí 56 00:02:26,460 --> 00:02:32,080 Tiene dos particularidades 57 00:02:32,080 --> 00:02:34,800 Primero que su nombre es igual a la clase 58 00:02:34,800 --> 00:02:37,539 Y segundo que no tiene 59 00:02:37,539 --> 00:02:38,759 Tipo return 60 00:02:38,759 --> 00:02:40,659 ¿Por qué no tiene tipo return? 61 00:02:45,500 --> 00:02:45,659 ¿Eh? 62 00:02:48,199 --> 00:02:49,560 Porque un constructor 63 00:02:49,560 --> 00:02:52,139 No tiene tipo 64 00:02:52,139 --> 00:02:54,219 No tiene tipo de devolución 65 00:02:54,219 --> 00:02:57,539 Porque ¿Qué devuelve un constructor? 66 00:03:00,370 --> 00:03:02,169 El objeto de tipo bicicleta 67 00:03:02,169 --> 00:03:03,210 En un cierto sentido 68 00:03:03,210 --> 00:03:05,189 Entonces no me interesa definirle 69 00:03:05,189 --> 00:03:06,449 ¿Qué me va a devolver? 70 00:03:06,530 --> 00:03:09,990 Porque lo que va a hacer esto es construir un objeto de tipo bicicleta 71 00:03:09,990 --> 00:03:11,990 Es eso lo que crea y que me devuelve 72 00:03:12,569 --> 00:03:13,409 ¿Sí? 73 00:03:14,610 --> 00:03:18,849 Entonces, ¿cuándo yo creo una bicicleta, qué necesito saber de la bicicleta? 74 00:03:20,990 --> 00:03:23,780 Ok. 75 00:03:24,639 --> 00:03:30,400 Bolean tipo. 76 00:03:31,819 --> 00:03:32,300 ¿Vale? 77 00:03:32,500 --> 00:03:36,659 El bolean tipo me dice si es de carretera o no. 78 00:03:36,659 --> 00:03:40,599 En concreto, si es falso, es de montaña. 79 00:03:40,780 --> 00:03:44,159 Si es truco, es de carretera. 80 00:03:45,360 --> 00:03:45,840 Justo. 81 00:03:46,900 --> 00:03:47,099 Vale. 82 00:03:47,740 --> 00:03:48,759 ¿Qué más necesito saber? 83 00:03:48,759 --> 00:04:01,300 Lo necesito saber 84 00:04:01,300 --> 00:04:02,840 Cuando yo compro la bicicleta 85 00:04:02,840 --> 00:04:03,780 Cuando yo creo la bicicleta 86 00:04:03,780 --> 00:04:05,400 Quiero que vaya ya a 100 km por hora 87 00:04:05,400 --> 00:04:06,199 Pregunto 88 00:04:06,199 --> 00:04:09,620 Cuando yo creo una nueva bicicleta 89 00:04:09,620 --> 00:04:11,680 Ya ha hecho 600 km 90 00:04:11,680 --> 00:04:12,319 Pregunto 91 00:04:12,319 --> 00:04:15,919 El ID 92 00:04:15,919 --> 00:04:18,300 String ID 93 00:04:18,300 --> 00:04:20,300 ¿Vale? 94 00:04:21,300 --> 00:04:22,800 Y con esto para mí es suficiente 95 00:04:22,800 --> 00:04:23,740 ¿Por qué? 96 00:04:25,040 --> 00:04:26,199 Vamos a verlo 97 00:04:26,199 --> 00:04:29,019 Y ahora tengo que inicializar estos 4 valores 98 00:04:29,019 --> 00:04:31,759 ¿Cuál es la velocidad cuando creo? 99 00:04:36,250 --> 00:04:36,509 Z 100 00:04:36,509 --> 00:04:38,490 Por ejemplo, ¿eh? 101 00:04:41,129 --> 00:04:42,230 ¿Es de carretera? 102 00:04:43,129 --> 00:04:52,389 ¿Cuánto vale es de carretera? 103 00:04:55,439 --> 00:04:55,620 ¿Eh? 104 00:04:56,600 --> 00:04:57,160 True 105 00:04:57,160 --> 00:05:01,199 Entonces, ¿puedo crear una bicicleta que no sea de carretera? 106 00:05:02,620 --> 00:05:03,180 No 107 00:05:03,180 --> 00:05:05,959 Porque si mi constructor 108 00:05:05,959 --> 00:05:07,500 Cada vez que yo lo llamo 109 00:05:07,500 --> 00:05:09,079 Me dice que es de carretera, es true 110 00:05:09,079 --> 00:05:10,439 Pues no lo puedo cambiar 111 00:05:10,439 --> 00:05:25,660 Si yo lo pongo así 112 00:05:25,660 --> 00:05:27,000 Es lo mismo, pero al revés 113 00:05:27,000 --> 00:05:30,259 Es decir, no puedo crear una bicicleta 114 00:05:30,259 --> 00:05:32,459 Que sea de carretera 115 00:05:32,459 --> 00:05:34,060 Porque todas las bicicletas que creo 116 00:05:34,060 --> 00:05:35,060 Son siempre falsas 117 00:05:35,060 --> 00:05:38,600 ¿Para qué me sirve esto? 118 00:05:45,009 --> 00:05:46,389 No sé por qué lo he puesto ahí 119 00:05:46,389 --> 00:05:48,850 ¿Sí? 120 00:05:49,509 --> 00:05:50,689 ¿Entendéis lo que estoy haciendo? 121 00:05:51,189 --> 00:05:53,290 Cuando yo creeré una nueva bicicleta 122 00:05:53,290 --> 00:05:55,189 Le diré aquí true 123 00:05:55,189 --> 00:05:56,490 O aquí false 124 00:05:56,490 --> 00:06:00,290 Y si le digo true, estoy creando una de carretera 125 00:06:00,290 --> 00:06:03,290 Y si le digo false, estoy creando una que no es de carretera 126 00:06:03,290 --> 00:06:06,529 O sea que este parámetro de aquí es 127 00:06:06,529 --> 00:06:11,689 Este atributo de aquí es parametrizado con este parámetro del constructor 128 00:06:11,689 --> 00:06:13,870 ¿Sí? 129 00:06:15,069 --> 00:06:16,170 ¿Distancia recorrida? 130 00:06:17,110 --> 00:06:23,500 Cero 131 00:06:23,500 --> 00:06:26,980 Al principio, cuando la creo, no ha recorrido nada 132 00:06:26,980 --> 00:06:28,939 ¿Y su identificador? 133 00:06:32,689 --> 00:06:34,350 Se lo he pasado como parámetro, ¿no? 134 00:06:35,069 --> 00:06:36,870 Para que cuando yo cree una nueva 135 00:06:36,870 --> 00:06:40,009 ¿Cómo se dice? 136 00:06:40,110 --> 00:06:42,990 Cuando yo crea una nueva bicicleta 137 00:06:42,990 --> 00:06:44,209 Le diré cómo se llama 138 00:06:44,209 --> 00:06:47,290 Así luego la puedo reconocer 139 00:06:47,290 --> 00:06:47,790 ¿Sí? 140 00:06:48,250 --> 00:06:49,990 O sea que cuando creo una nueva bicicleta 141 00:06:49,990 --> 00:06:51,649 Al crear una nueva bicicleta 142 00:06:51,649 --> 00:06:52,949 Yo tengo que dar dos parámetros 143 00:06:52,949 --> 00:06:54,990 El parámetro de qué tipo es 144 00:06:54,990 --> 00:06:56,029 Si es de carretera o no 145 00:06:56,029 --> 00:06:58,670 Y su identificador 146 00:06:58,670 --> 00:07:00,470 Los otros dos 147 00:07:00,470 --> 00:07:01,949 Siempre son cero 148 00:07:01,949 --> 00:07:04,990 Al crear una bicicleta 149 00:07:05,069 --> 00:07:06,990 ¿Veis algo raro aquí? 150 00:07:08,889 --> 00:07:09,790 Espera, hago zoom 151 00:07:09,790 --> 00:07:21,230 Los colorines 152 00:07:21,230 --> 00:07:22,230 ¿Vale? 153 00:07:22,930 --> 00:07:23,850 Si os fijáis 154 00:07:23,850 --> 00:07:25,689 Hay dos colorines 155 00:07:25,689 --> 00:07:27,769 Hay un pseudo marrón 156 00:07:27,769 --> 00:07:30,050 Cosa rara, no es negro 157 00:07:30,050 --> 00:07:30,930 ¿Por qué negro es esto? 158 00:07:30,930 --> 00:07:31,990 Es algo raro 159 00:07:31,990 --> 00:07:32,930 Y azul 160 00:07:32,930 --> 00:07:33,910 ¿Vale? 161 00:07:34,269 --> 00:07:39,290 Fijaos que cuando yo estoy trabajando con los atributos 162 00:07:39,290 --> 00:07:41,149 Los atributos salen en azul 163 00:07:41,149 --> 00:07:44,610 Sin embargo, el otro tipo, este de aquí 164 00:07:44,610 --> 00:07:49,129 Que son variables locales 165 00:07:49,129 --> 00:07:51,850 ¿Vale? Son variables locales a este bloque de aquí 166 00:07:51,850 --> 00:07:54,610 En particular, en este caso son tipos 167 00:07:54,610 --> 00:07:59,829 Pero si creara otra int gatito es igual a 7 168 00:07:59,829 --> 00:08:03,089 Veis que también gatito me lo da como variable local 169 00:08:03,089 --> 00:08:05,689 ¿Vale? Me lo pone en este marroncito raro 170 00:08:05,689 --> 00:08:06,410 ¿Sí? 171 00:08:07,050 --> 00:08:10,170 Entonces, las variables que valen aquí dentro 172 00:08:10,170 --> 00:08:11,490 En este bloque de aquí 173 00:08:11,490 --> 00:08:13,529 Pues me lo pone de otro color 174 00:08:13,529 --> 00:08:16,129 Entonces, estamos de acuerdo que aquí 175 00:08:16,129 --> 00:08:17,470 Hay un problema 176 00:08:17,470 --> 00:08:21,509 Porque me está poniendo 177 00:08:21,509 --> 00:08:22,389 Dentro de id 178 00:08:22,389 --> 00:08:25,189 O sea, perdón 179 00:08:25,189 --> 00:08:26,670 Está pillando el valor de id 180 00:08:26,670 --> 00:08:28,930 El que me han pasado y lo guarda 181 00:08:28,930 --> 00:08:31,110 Dentro de esta variable aquí 182 00:08:31,110 --> 00:08:33,610 Y yo en vez de lo quiero guardar 183 00:08:33,610 --> 00:08:35,269 Dentro de esta variable aquí 184 00:08:35,269 --> 00:08:38,840 ¿Por qué antes 185 00:08:38,840 --> 00:08:40,299 No me ha dado el problema? 186 00:08:40,299 --> 00:08:44,659 Porque se llamaban de forma distinta 187 00:08:44,659 --> 00:08:47,120 Y hasta ahora es de carretera 188 00:08:47,120 --> 00:08:48,759 Existe solo una vez 189 00:08:48,759 --> 00:08:49,419 Esto 190 00:08:49,419 --> 00:08:51,899 Entonces él es suficientemente inteligente para decir 191 00:08:51,899 --> 00:08:53,919 Vale, te estabas refiriendo a este de aquí 192 00:08:53,919 --> 00:08:56,059 Pero ahora hay dos id 193 00:08:56,059 --> 00:08:57,340 Este id de aquí 194 00:08:57,340 --> 00:08:58,720 Y este id de aquí 195 00:08:58,720 --> 00:09:01,240 Hay dos variables distintas 196 00:09:01,240 --> 00:09:02,840 Solo que esta es local 197 00:09:02,840 --> 00:09:04,740 Vale solo aquí dentro 198 00:09:04,740 --> 00:09:08,360 Es un parámetro que valdrá dentro de este bloque aquí 199 00:09:08,360 --> 00:09:09,940 Mientras esta es mi atributo 200 00:09:09,940 --> 00:09:14,259 Ahora, como estoy aquí dentro 201 00:09:14,259 --> 00:09:15,960 Cuando yo uso id 202 00:09:15,960 --> 00:09:19,240 Él hace referencia a la más cercana a él 203 00:09:19,240 --> 00:09:19,759 Que es esta 204 00:09:19,759 --> 00:09:22,000 Es local, es aquí dentro 205 00:09:22,000 --> 00:09:24,500 Y no veo esta de aquí 206 00:09:24,500 --> 00:09:28,639 Entonces, para poder ver esta de aquí 207 00:09:28,639 --> 00:09:30,279 Tengo dos opciones 208 00:09:30,279 --> 00:09:32,159 La primera es 209 00:09:32,159 --> 00:09:36,419 Esto 210 00:09:36,419 --> 00:09:39,970 ¡Voilá! 211 00:09:41,049 --> 00:09:44,509 He cambiado el nombre de la variable interna 212 00:09:44,509 --> 00:09:50,470 Y ahora me reconoce que esta id que ya no existe como variable local 213 00:09:50,470 --> 00:09:52,029 Pues es esta id de aquí 214 00:09:52,029 --> 00:09:53,269 ¿Justo? 215 00:09:54,210 --> 00:09:54,389 ¿Sí? 216 00:09:55,149 --> 00:09:56,870 Ahora, el problema de estas cosas de aquí 217 00:09:56,870 --> 00:10:03,450 Es que me fuerza a encontrar nombres distintos por cada uno de estos 218 00:10:03,450 --> 00:10:04,149 ¿Vale? 219 00:10:04,149 --> 00:10:07,470 Y luego tengo que saber yo cuando lo voy a leer 220 00:10:07,470 --> 00:10:09,710 Que nombre y id son la misma cosa 221 00:10:09,710 --> 00:10:13,110 Lo que no es guay 222 00:10:13,110 --> 00:10:14,450 ¿Vale? 223 00:10:14,509 --> 00:10:16,289 En los constructores 224 00:10:16,289 --> 00:10:17,269 Y en otro lado 225 00:10:17,269 --> 00:10:19,889 Normalmente si tengo que hacer una cosa así 226 00:10:19,889 --> 00:10:20,750 Que son lo mismo 227 00:10:20,750 --> 00:10:23,370 Lo que voy a hacer es llamarlo de la misma forma 228 00:10:23,370 --> 00:10:27,710 Porque es la misma cosa 229 00:10:27,710 --> 00:10:30,309 O sea, cuando yo voy a poner esto 230 00:10:30,309 --> 00:10:33,409 En realidad estoy poniendo esto 231 00:10:33,409 --> 00:10:35,210 ¿Sí? 232 00:10:35,289 --> 00:10:38,450 Solo que en el constructor estoy construyendo una nueva bicicleta 233 00:10:38,450 --> 00:10:41,090 Y le estoy diciendo que esta nueva bicicleta es de carrera 234 00:10:41,090 --> 00:10:42,789 Tiene que valer true, false o lo que sea 235 00:10:42,789 --> 00:10:47,830 Pero me causa este problema de aquí 236 00:10:47,830 --> 00:10:53,070 Que ahora aquí dentro tengo una dualidad 237 00:10:53,070 --> 00:11:00,750 Entre lo que es la variable local y la variable atributo 238 00:11:00,750 --> 00:11:08,210 ¿Cómo puedo referirme a esta existiendo esta? 239 00:11:08,690 --> 00:11:10,389 Con una palabra reservada 240 00:11:10,389 --> 00:11:11,509 This 241 00:11:11,509 --> 00:11:16,340 Fijaos que ahora es azulito 242 00:11:16,340 --> 00:11:31,769 ¿Qué es este this? 243 00:11:32,570 --> 00:11:34,029 This es este objeto 244 00:11:34,029 --> 00:11:38,090 This es esta bicicleta 245 00:11:38,090 --> 00:11:39,870 Tú estás creándolo en la bicicleta 246 00:11:39,870 --> 00:11:41,230 Tienes aquí el objeto, ¿vale? 247 00:11:41,490 --> 00:11:43,909 Y le estás poniendo que su velocidad es cero 248 00:11:43,909 --> 00:11:46,889 Luego estás pillando una variable por algún lado 249 00:11:46,889 --> 00:11:48,049 Que se llama este carretera 250 00:11:48,049 --> 00:11:49,529 Esta de aquí que me están pasando 251 00:11:49,529 --> 00:11:52,529 Y su valor, sea cual sea su valor 252 00:11:52,529 --> 00:11:53,990 Cuando me llamen a este constructor 253 00:11:53,990 --> 00:11:55,649 Lo quiero poner dentro 254 00:11:55,649 --> 00:11:58,129 Es de carretera de this object 255 00:11:58,129 --> 00:11:59,230 Este objeto 256 00:11:59,230 --> 00:12:00,649 ¿Vale? 257 00:12:01,129 --> 00:12:03,250 Entonces cuando uso el this punto 258 00:12:03,250 --> 00:12:05,629 Me estoy refiriendo a 259 00:12:05,629 --> 00:12:07,049 Esto 260 00:12:07,049 --> 00:12:11,620 ¿Se entiende? 261 00:12:16,600 --> 00:12:19,080 Entonces si tengo características 262 00:12:19,080 --> 00:12:20,620 De este estilo que se llaman igual 263 00:12:20,620 --> 00:12:23,259 Entonces no podría ponerlo de esta forma 264 00:12:23,259 --> 00:12:25,440 Para si quiero utilizar 265 00:12:25,440 --> 00:12:27,759 Esta variable la uso directamente 266 00:12:27,759 --> 00:12:29,220 Si quiero utilizar 267 00:12:29,220 --> 00:12:31,100 El atributo le pongo 268 00:12:31,100 --> 00:12:32,320 Dis.delante 269 00:12:32,320 --> 00:12:35,120 Podría poner 270 00:12:35,120 --> 00:12:36,220 Dis.velocidad 271 00:12:36,220 --> 00:12:38,580 Sí, tranquilamente 272 00:12:38,580 --> 00:12:39,559 Ningún problema 273 00:12:39,559 --> 00:12:42,460 Lo único es que no me hace falta porque 274 00:12:42,460 --> 00:12:43,580 Velocidad hay una sola 275 00:12:43,580 --> 00:12:51,600 Vale 276 00:12:51,600 --> 00:12:54,940 Esto no me pone los colorines 277 00:12:54,940 --> 00:12:56,299 Porque no lo sé 278 00:12:56,299 --> 00:13:01,970 Vale, entonces este de aquí 279 00:13:01,970 --> 00:13:04,549 Es mi constructor de bicicletas 280 00:13:04,549 --> 00:13:06,309 Vale 281 00:13:06,309 --> 00:13:07,909 Vamos a construir una bicicleta 282 00:13:07,909 --> 00:13:11,659 Estoy dentro del main 283 00:13:11,659 --> 00:13:13,700 Aquí empieza mi programa 284 00:13:13,700 --> 00:13:15,600 Quiero construir una bicicleta 285 00:13:15,600 --> 00:13:17,340 ¿Cómo se construye una bicicleta? 286 00:13:17,700 --> 00:13:19,419 Pues llamando a su constructor 287 00:13:19,419 --> 00:13:23,059 ¿Cómo llamo a mi constructor? 288 00:13:23,559 --> 00:13:24,419 Con una new 289 00:13:24,419 --> 00:13:30,059 Como cuando hacía new 290 00:13:30,059 --> 00:13:31,559 Scanner 291 00:13:31,559 --> 00:13:36,370 Y al scanner le tenía que pasar un 292 00:13:36,370 --> 00:13:38,429 ¿Cómo se llama esto? 293 00:13:38,529 --> 00:13:39,490 Un parámetro 294 00:13:39,490 --> 00:13:41,950 Que era system.in 295 00:13:41,950 --> 00:13:43,450 ¿Qué es esta cosa aquí? No lo sé 296 00:13:43,450 --> 00:13:46,110 Todavía 297 00:13:46,110 --> 00:13:47,570 En realidad lo sé 298 00:13:47,570 --> 00:13:49,509 Es un input stream 299 00:13:49,509 --> 00:13:54,019 ¿Pero qué es un input stream? No lo sé 300 00:13:54,019 --> 00:13:55,379 Ya lo veréis 301 00:13:55,379 --> 00:13:57,919 Pues aquí es la misma cosa 302 00:13:57,919 --> 00:14:00,240 Si para crear un nuevo scanner 303 00:14:00,240 --> 00:14:01,580 Tenía que hacer new scanner 304 00:14:01,580 --> 00:14:04,120 Para crear una nueva bicicleta tendría que hacer un new 305 00:14:04,120 --> 00:14:07,639 Bicicleta 306 00:14:07,639 --> 00:14:12,480 ¿Vale? 307 00:14:13,899 --> 00:14:15,440 Ahora, pero new bicicleta 308 00:14:15,440 --> 00:14:16,620 Se enfada porque me dice 309 00:14:16,620 --> 00:14:19,440 El constructor bicicleta 310 00:14:20,100 --> 00:14:21,379 Sin nada 311 00:14:21,379 --> 00:14:23,159 No está definido 312 00:14:23,159 --> 00:14:25,519 Is undefined 313 00:14:25,519 --> 00:14:28,220 Porque el único que yo encuentro 314 00:14:28,220 --> 00:14:28,960 Es 315 00:14:28,960 --> 00:14:31,600 Que tiene argumentos 316 00:14:31,600 --> 00:14:33,440 Que corresponden con 317 00:14:33,440 --> 00:14:34,960 Bicicleta boolean string 318 00:14:34,960 --> 00:14:36,519 Ese es el que he hecho yo 319 00:14:36,519 --> 00:14:39,759 Mi constructor necesita un booleano o un string 320 00:14:39,759 --> 00:14:41,980 Pues le tengo que poner un booleano 321 00:14:41,980 --> 00:14:42,399 O un string 322 00:14:42,399 --> 00:14:43,500 Como quiero que sea 323 00:14:43,500 --> 00:14:47,179 De carretera o de montaña 324 00:14:47,179 --> 00:14:49,620 Montaña 325 00:14:49,620 --> 00:14:53,940 Vale 326 00:14:53,940 --> 00:14:55,860 El primero booleano 327 00:14:55,860 --> 00:14:57,559 Me dice si es 328 00:14:57,559 --> 00:15:00,559 De carretera o de montaña 329 00:15:00,559 --> 00:15:01,840 Justo 330 00:15:01,840 --> 00:15:03,919 El segundo 331 00:15:03,919 --> 00:15:05,320 Tiene que ser el nombre 332 00:15:05,320 --> 00:15:06,179 ¿Cómo lo llamo? 333 00:15:07,740 --> 00:15:08,659 Artax 334 00:15:08,659 --> 00:15:15,850 Este señor de aquí 335 00:15:15,850 --> 00:15:18,850 Me crea un objeto 336 00:15:18,850 --> 00:15:22,500 ¿Si? 337 00:15:23,059 --> 00:15:24,539 Crea un nuevo objeto 338 00:15:24,539 --> 00:15:28,000 Utilizando el constructor bicicleta 339 00:15:28,000 --> 00:15:29,759 Que pilla un atributo 340 00:15:29,759 --> 00:15:31,320 Un booleano 341 00:15:31,320 --> 00:15:32,600 Y un string 342 00:15:32,600 --> 00:15:34,659 Este booleano 343 00:15:34,659 --> 00:15:37,600 Se hará una bind 344 00:15:37,600 --> 00:15:39,299 Se ligará 345 00:15:39,299 --> 00:15:41,659 Se atará 346 00:15:41,659 --> 00:15:43,820 A esta variable 347 00:15:43,820 --> 00:15:44,279 De aquí 348 00:15:44,279 --> 00:15:49,639 Por lo tanto cuando luego 349 00:15:49,639 --> 00:15:51,519 Llegará aquí en este objeto 350 00:15:51,519 --> 00:15:52,659 Es de carrera 351 00:15:52,659 --> 00:15:53,980 Pondrá 352 00:15:53,980 --> 00:15:55,600 False 353 00:15:55,600 --> 00:15:58,659 Y 354 00:15:58,659 --> 00:16:02,600 Esta id de aquí 355 00:16:02,600 --> 00:16:04,799 Se juntará 356 00:16:04,799 --> 00:16:06,100 Con este 357 00:16:06,100 --> 00:16:07,960 Valor de aquí 358 00:16:07,960 --> 00:16:10,279 Y por lo tanto cuando llega aquí 359 00:16:10,279 --> 00:16:11,940 En this.id 360 00:16:11,940 --> 00:16:14,100 En el atributo id de este objeto 361 00:16:14,100 --> 00:16:15,820 Pondrá artax 362 00:16:15,820 --> 00:16:19,059 Si o no 363 00:16:19,059 --> 00:16:22,200 He creado el objeto 364 00:16:22,200 --> 00:16:23,860 Ahora 365 00:16:23,860 --> 00:16:24,980 Que pasa con este objeto 366 00:16:24,980 --> 00:16:30,139 Que se pierde en la nada 367 00:16:30,139 --> 00:16:31,639 Y 368 00:16:31,639 --> 00:16:34,740 Llega un señor que conoceremos en un futuro 369 00:16:34,740 --> 00:16:36,259 Que se llama el garbage collector 370 00:16:36,259 --> 00:16:37,740 El recolector de basura 371 00:16:37,740 --> 00:16:38,779 Y lo tira 372 00:16:38,779 --> 00:16:40,159 ¿Por qué? 373 00:16:41,039 --> 00:16:42,679 Porque no tengo nada 374 00:16:42,679 --> 00:16:44,600 Que me permita 375 00:16:44,600 --> 00:16:46,100 Llegar a este objeto 376 00:16:46,100 --> 00:16:47,759 Yo lo he creado 377 00:16:47,759 --> 00:16:50,000 Pero no he hecho nada 378 00:16:50,000 --> 00:16:52,720 Para que pueda manejar este objeto 379 00:16:52,720 --> 00:16:54,820 Un handler 380 00:16:54,820 --> 00:16:55,899 Lo que se llama 381 00:16:55,899 --> 00:16:56,919 Un mango 382 00:16:56,919 --> 00:16:59,840 Un manipulador 383 00:16:59,840 --> 00:17:01,240 Un puntero 384 00:17:01,240 --> 00:17:04,079 Necesito algo 385 00:17:04,079 --> 00:17:06,819 Que me permita acceder a este objeto 386 00:17:06,819 --> 00:17:08,319 ¿Cómo puedo hacerlo? 387 00:17:08,319 --> 00:17:09,299 ¿Qué se os ocurre? 388 00:17:09,579 --> 00:17:11,680 ¿Os acordáis cuando hacía New Scanner? 389 00:17:13,680 --> 00:17:15,779 De System.in 390 00:17:15,779 --> 00:17:19,759 Esto crea el objeto 391 00:17:19,759 --> 00:17:22,440 Pero ¿qué hacía yo con esto? 392 00:17:25,390 --> 00:17:26,710 ¿Era así el comando? 393 00:17:27,509 --> 00:17:28,750 Claro, porque necesitabas un igual 394 00:17:28,750 --> 00:17:30,190 ¿Qué hacía yo? 395 00:17:34,089 --> 00:17:35,329 Este señor 396 00:17:35,329 --> 00:17:37,269 Lo que me hace 397 00:17:37,269 --> 00:17:40,309 Es crear un puntero 398 00:17:40,309 --> 00:17:41,089 Un handler 399 00:17:41,089 --> 00:17:44,109 Para luego poder trabajar con este objeto de aquí 400 00:17:44,109 --> 00:17:46,069 De hecho, a partir de ahora 401 00:17:46,069 --> 00:17:48,869 Yo no uso nunca esta cosa de aquí 402 00:17:48,869 --> 00:17:50,490 Uso siempre scan 403 00:17:50,490 --> 00:17:53,950 Haciendo scan.nextint 404 00:17:53,950 --> 00:17:59,119 Estoy llamando 405 00:17:59,119 --> 00:18:01,180 Este método de aquí 406 00:18:01,180 --> 00:18:03,339 Que no sé qué hace, pero está aquí un método 407 00:18:03,339 --> 00:18:06,059 Sobre este objeto de aquí 408 00:18:06,059 --> 00:18:06,920 ¿Cuál es este objeto? 409 00:18:07,059 --> 00:18:07,980 El que has creado aquí 410 00:18:07,980 --> 00:18:10,500 ¿Se entiende? 411 00:18:13,119 --> 00:18:15,220 Pues entonces, ¿para mi bicicleta qué tendré que hacer? 412 00:18:15,700 --> 00:18:34,890 Ya está, ya he creado mi bicicleta 413 00:18:34,890 --> 00:18:37,769 ¿Sí? He creado mi bicicleta 414 00:18:37,769 --> 00:18:39,690 Y 415 00:18:39,690 --> 00:18:43,710 Tiene una referencia dentro de mi programa 416 00:18:43,710 --> 00:18:44,829 Que se llama bicuno 417 00:18:44,829 --> 00:18:46,490 A partir de ahora 418 00:18:46,490 --> 00:18:48,170 Puedo utilizar bicuno 419 00:18:48,170 --> 00:18:49,789 Como por ejemplo puedo decir 420 00:18:49,789 --> 00:18:53,250 System.out.println 421 00:18:53,250 --> 00:18:54,730 ¿Cómo escribo 422 00:18:54,730 --> 00:18:57,130 Mi bicicleta se llama y su nombre? 423 00:18:59,839 --> 00:19:01,880 Mi bici se llama 424 00:19:01,880 --> 00:19:10,059 ¿Cómo se llama mi bicicleta? 425 00:19:10,140 --> 00:19:12,619 ¿Cómo me referencia al objeto que he creado? 426 00:19:14,359 --> 00:19:15,079 Vicuno 427 00:19:15,079 --> 00:19:19,140 Y este es el objeto 428 00:19:19,140 --> 00:19:22,460 De este objeto tengo cuatro opciones 429 00:19:22,460 --> 00:19:24,220 ¿Cuál quiero de estos? 430 00:19:25,400 --> 00:19:26,079 ID 431 00:19:26,079 --> 00:19:28,279 ¿Cómo acedo desde aquí a ID? 432 00:19:37,579 --> 00:19:38,619 Vete al objeto 433 00:19:38,619 --> 00:19:39,599 Vicuno 434 00:19:39,599 --> 00:19:42,079 Y desde allí accedes 435 00:19:42,079 --> 00:19:44,720 A su parámetro, a su atributo ID 436 00:19:44,720 --> 00:19:51,410 Vamos a ver 437 00:19:51,410 --> 00:19:52,930 Nuestro fantástico programa 438 00:19:52,930 --> 00:19:59,210 Esputado 439 00:19:59,210 --> 00:20:01,349 Ah, por escáner 440 00:20:01,349 --> 00:20:04,089 Oye, la escáner 441 00:20:04,089 --> 00:20:05,930 No te necesito por ahora 442 00:20:05,930 --> 00:20:07,289 Ya 443 00:20:07,289 --> 00:20:16,299 Vamos a crear otra bici 444 00:20:16,299 --> 00:20:22,339 Bicicleta 445 00:20:22,339 --> 00:20:24,500 Pic2 446 00:20:24,500 --> 00:20:27,240 ¿Cómo creo otra bici? 447 00:20:28,539 --> 00:20:29,019 New 448 00:20:29,019 --> 00:20:32,079 Bicicleta 449 00:20:32,079 --> 00:20:40,720 ¿Qué pongo? 450 00:20:43,750 --> 00:20:55,609 Oh, ya he tocado eso 451 00:20:55,609 --> 00:21:14,670 ¿Qué me pondrá aquí ahora? 452 00:21:18,019 --> 00:21:19,099 Mi bici se llama 453 00:21:19,099 --> 00:21:21,180 Artax 454 00:21:21,180 --> 00:21:24,480 Tu bici se llama 455 00:21:24,480 --> 00:21:27,599 Falco 456 00:21:27,599 --> 00:21:35,470 Fijaos 457 00:21:35,470 --> 00:21:37,190 El atributo se llama id 458 00:21:37,190 --> 00:21:39,529 Es el mismo atributo 459 00:21:39,529 --> 00:21:42,230 Porque un objeto tiene estos atributos 460 00:21:42,230 --> 00:21:45,349 Cualquier bicicleta tendrá atributo id 461 00:21:45,349 --> 00:21:46,690 ¿Sí? 462 00:21:46,910 --> 00:21:52,329 Pero si yo pido el atributo id de big1 463 00:21:52,329 --> 00:21:55,190 Entonces será del objeto este de aquí 464 00:21:55,190 --> 00:21:56,569 Y entonces es alta 465 00:21:56,569 --> 00:22:01,250 Si yo pido el id de big2 466 00:22:01,250 --> 00:22:04,750 Me pedirá de este objeto de aquí 467 00:22:04,750 --> 00:22:09,369 Es la misma clase que siempre tiene estos cuatro parámetros 468 00:22:09,369 --> 00:22:10,509 Estos cuatro atributos 469 00:22:10,509 --> 00:22:13,089 Pero de dos instancias distintas 470 00:22:13,089 --> 00:22:16,069 Una instancia es esta y una instancia es esta 471 00:22:16,069 --> 00:22:17,710 Dos objetos distintos 472 00:22:17,710 --> 00:22:20,589 ¿Dudas? 473 00:22:27,859 --> 00:22:28,420 Sí 474 00:22:28,420 --> 00:22:32,059 Como pregunto si es de montaña 475 00:22:32,059 --> 00:22:34,480 O de carretera 476 00:22:34,480 --> 00:22:39,220 Quiero saber si Bicuno es de montaña 477 00:22:39,220 --> 00:22:47,710 ¿Cómo? 478 00:22:47,710 --> 00:22:47,769 ¿Cómo? 479 00:22:49,109 --> 00:22:49,910 Si 480 00:22:49,910 --> 00:22:54,470 Bicuno, por ejemplo 481 00:22:54,470 --> 00:22:55,910 ¿Bicuno qué? 482 00:22:57,470 --> 00:22:58,269 Punto 483 00:22:58,269 --> 00:23:02,589 Es de carretera 484 00:23:02,589 --> 00:23:07,430 Igual o igual a true, por ejemplo 485 00:23:07,430 --> 00:23:09,470 Hace falta 486 00:23:09,470 --> 00:23:12,829 No, porque ya es un boolean 487 00:23:12,829 --> 00:23:15,589 Si es de carretera 488 00:23:15,589 --> 00:23:17,529 Escribiré 489 00:23:17,529 --> 00:23:20,609 Iré con 490 00:23:20,609 --> 00:23:23,950 Vicuno.id 491 00:23:23,950 --> 00:23:25,589 Vicuno.id 492 00:23:25,589 --> 00:23:31,329 Por carretera 493 00:23:31,329 --> 00:23:37,980 ¿Sí? 494 00:23:38,539 --> 00:23:42,410 Elche 495 00:23:42,410 --> 00:23:46,690 Ah bueno, espera que aquí me falta 496 00:23:46,690 --> 00:23:48,789 Un system.8.ptl 497 00:23:48,789 --> 00:23:53,500 Ahora 498 00:23:53,500 --> 00:24:06,480 Si no, por montañas 499 00:24:06,480 --> 00:24:19,019 Y hacemos lo mismo 500 00:24:19,019 --> 00:24:20,000 Con la siguiente 501 00:24:20,000 --> 00:24:22,519 Pero con VIX2 502 00:24:22,519 --> 00:24:27,859 A ver, ¿qué hace esto? 503 00:24:30,000 --> 00:24:31,579 Mi bici se llama Artax 504 00:24:31,579 --> 00:24:33,819 Iré con Artax por montañas 505 00:24:33,819 --> 00:24:36,140 Tu bici se llama Falkor 506 00:24:36,140 --> 00:24:36,799 Iré 507 00:24:36,799 --> 00:24:38,319 Que se la robo 508 00:24:38,319 --> 00:24:40,180 Con Falkor por carretera 509 00:24:40,180 --> 00:24:43,299 Correcto 510 00:24:43,299 --> 00:24:45,720 He hecho al revés 511 00:24:45,720 --> 00:24:50,390 Artaxa era de montaña 512 00:24:50,390 --> 00:24:51,589 Por lo tanto está bien 513 00:24:51,589 --> 00:24:58,640 Veis que estoy utilizando 514 00:24:58,640 --> 00:24:59,880 En la primera parte 515 00:24:59,880 --> 00:25:01,960 Iras 516 00:25:01,960 --> 00:25:04,420 Ok 517 00:25:04,420 --> 00:25:05,480 Iras también 518 00:25:05,480 --> 00:25:08,980 La primera parte lo estoy haciendo 519 00:25:08,980 --> 00:25:10,559 Estoy pidiendo toda la información 520 00:25:10,559 --> 00:25:13,039 De la primera bicicleta que he creado 521 00:25:13,039 --> 00:25:16,359 Y en la segunda, toda la información de la segunda 522 00:25:16,359 --> 00:25:19,420 Bicicleta que he creado 523 00:25:19,420 --> 00:25:26,490 Aquí tengo las dos bicicletas que he creado 524 00:25:26,490 --> 00:25:29,970 Y luego voy preguntando cosas 525 00:25:29,970 --> 00:25:32,190 Si pongo Bic 1 y algo 526 00:25:32,190 --> 00:25:34,490 Estoy preguntando de Bic 1 527 00:25:34,490 --> 00:25:36,990 Si pongo Bic 2 y algo 528 00:25:36,990 --> 00:25:39,650 Pues estoy preguntando de Bic 2 529 00:25:39,650 --> 00:25:41,450 Dudas 530 00:25:41,450 --> 00:25:47,950 Vamos a hacerle hacer algo 531 00:25:47,950 --> 00:25:49,109 Comportamiento 532 00:25:49,109 --> 00:25:53,970 Entonces 533 00:25:53,970 --> 00:25:56,549 Esta es mi clase 534 00:25:56,549 --> 00:25:57,690 Bicicleta 535 00:25:57,690 --> 00:25:59,769 Tiene un constructor que se llama bicicleta 536 00:25:59,769 --> 00:26:01,289 Que pilla dos parámetros 537 00:26:01,289 --> 00:26:03,269 ¿Estamos a acuerdo hasta aquí? 538 00:26:03,750 --> 00:26:05,170 Vamos a hacerle hacer algo 539 00:26:05,170 --> 00:26:05,930 Un método 540 00:26:05,930 --> 00:26:08,789 Public 541 00:26:08,789 --> 00:26:14,910 Nope 542 00:26:14,910 --> 00:26:17,710 Cortaos, static 543 00:26:17,710 --> 00:26:19,450 Lo utilizamos antes 544 00:26:19,450 --> 00:26:21,289 Ahora cuando usamos objetos 545 00:26:21,289 --> 00:26:22,730 Static no lo ponemos 546 00:26:22,730 --> 00:26:25,250 ¿Vale? Para entender la diferencia entre el estático y el no 547 00:26:25,250 --> 00:26:27,470 Dejámoslo un tiempo por ahora 548 00:26:27,470 --> 00:26:28,930 ¿Vale? Pero ahora cuando hacemos 549 00:26:28,930 --> 00:26:31,089 Métodos que trabajan sobre 550 00:26:31,089 --> 00:26:33,450 Objetos, no va el estático 551 00:26:33,450 --> 00:26:34,730 ¿Vale? 552 00:26:35,690 --> 00:26:37,009 Entonces, queremos que devuelva algo 553 00:26:37,009 --> 00:26:38,829 Hacemos el método acelerar, por ejemplo 554 00:26:38,829 --> 00:26:40,190 Para ir más rápido 555 00:26:40,190 --> 00:26:43,789 ¿Quieres decir que lo que queramos hacer hoy sería acelerar? 556 00:26:45,390 --> 00:26:47,069 ¿Quiero que luego me des la velocidad? 557 00:26:47,609 --> 00:26:49,630 O sea, cuando acelero me dices la velocidad actual 558 00:26:49,630 --> 00:26:50,029 ¿O no? 559 00:26:50,029 --> 00:26:53,930 Podría hacer dos versiones, ¿vale? 560 00:26:54,289 --> 00:26:54,930 Una así 561 00:26:54,930 --> 00:27:04,380 Dis.velocidad 562 00:27:04,380 --> 00:27:05,519 Más, más 563 00:27:05,519 --> 00:27:12,150 Cada vez que llamo acelera 564 00:27:12,150 --> 00:27:13,869 Aumenta de uno la velocidad 565 00:27:13,869 --> 00:27:21,059 Y podría tener otro método 566 00:27:21,059 --> 00:27:25,160 En que le paso 567 00:27:25,160 --> 00:27:25,980 De cuanto 568 00:27:25,980 --> 00:27:28,640 Aceleración 569 00:27:28,640 --> 00:27:37,549 ¿Dónde ves 2C tú? 570 00:27:48,410 --> 00:27:49,170 Diferencia 571 00:27:49,170 --> 00:27:50,289 Si yo llamo acelera 572 00:27:50,289 --> 00:27:51,650 Aumenta de 1 573 00:27:51,650 --> 00:27:54,569 Si llamo acelera de 5 574 00:27:54,569 --> 00:27:55,910 Me aumenta de 5 575 00:27:55,910 --> 00:27:56,809 De golpe 576 00:27:56,809 --> 00:28:02,680 ¿Lo veis? 577 00:28:05,079 --> 00:28:07,519 Habría podido hacer una cosa distinta 578 00:28:07,519 --> 00:28:08,220 Que es 579 00:28:08,220 --> 00:28:10,960 Por ejemplo 580 00:28:10,960 --> 00:28:18,799 Resultado es igual 581 00:28:18,799 --> 00:28:40,690 Que hace esto 582 00:28:40,690 --> 00:28:42,289 Lo mismo que antes 583 00:28:42,289 --> 00:28:45,329 Aumenta de 1 velocidad 584 00:28:45,329 --> 00:28:47,029 Pero además 585 00:28:47,029 --> 00:28:48,730 Cuando ha hecho la operación 586 00:28:48,730 --> 00:28:51,309 El valor nuevo de la velocidad 587 00:28:51,309 --> 00:28:52,730 Me lo devuelve 588 00:28:52,730 --> 00:28:55,190 Entonces cuando ya me acelera 589 00:28:55,190 --> 00:28:56,869 Puedo saber a qué velocidad estoy yendo 590 00:28:56,869 --> 00:29:02,650 Me interesa 591 00:29:02,650 --> 00:29:04,309 Relativamente 592 00:29:04,309 --> 00:29:07,289 Dejámoslos así que más sencillo 593 00:29:07,289 --> 00:29:08,829 Por ahora 594 00:29:08,829 --> 00:29:10,049 ¿Vale? 595 00:29:10,250 --> 00:29:11,910 Y vamos a usarla 596 00:29:11,910 --> 00:29:15,769 ¿Cómo uso 597 00:29:15,769 --> 00:29:18,789 Estas cosas? Por ejemplo, aquí he creado 598 00:29:18,789 --> 00:29:20,170 La bicicleta 1 599 00:29:20,170 --> 00:29:23,609 ¿Cómo acelero con la bicicleta 1? 600 00:29:24,490 --> 00:29:33,890 Diz 601 00:29:33,890 --> 00:29:38,170 Vicuno 602 00:29:38,170 --> 00:29:39,690 Punto 603 00:29:39,690 --> 00:29:42,329 Acelera 604 00:29:42,329 --> 00:29:51,769 Voy a acelerar tres veces 605 00:29:51,769 --> 00:29:56,750 System. 606 00:29:56,750 --> 00:29:57,710 Punto 607 00:29:57,710 --> 00:30:09,430 Vicuno 608 00:30:09,430 --> 00:30:10,930 Punto ID 609 00:30:10,930 --> 00:30:16,500 Va 610 00:30:16,500 --> 00:30:18,000 A 611 00:30:18,000 --> 00:30:20,140 Más 612 00:30:20,140 --> 00:30:21,420 Como veo la velocidad 613 00:30:21,420 --> 00:30:31,210 Vic1.velocidad 614 00:30:31,210 --> 00:30:38,950 Kilómetros hora 615 00:30:38,950 --> 00:30:43,380 ¿Qué me espero que me ponga aquí? 616 00:30:44,019 --> 00:30:48,940 3 617 00:30:48,940 --> 00:30:51,079 Porque he acelerado 3 veces 618 00:30:51,079 --> 00:30:53,980 Vamos a verlo 619 00:30:53,980 --> 00:31:02,690 Y si ahora pregunto lo mismo 620 00:31:02,690 --> 00:31:04,569 Para Vic2 621 00:31:04,569 --> 00:31:12,640 ¿Qué me pone? 622 00:31:12,640 --> 00:31:26,029 Son dos objetos distintos 623 00:31:26,029 --> 00:31:27,710 Mira, misma clase 624 00:31:27,710 --> 00:31:29,230 Tienen los mismos atributos 625 00:31:29,230 --> 00:31:30,730 Pueden hacer las mismas cosas 626 00:31:30,730 --> 00:31:33,450 Pero en el objeto 1 627 00:31:33,450 --> 00:31:35,589 La bici 1, en Artax 628 00:31:35,589 --> 00:31:37,670 He acelerado 3 veces 629 00:31:37,670 --> 00:31:40,369 Y en Falkor todavía no he acelerado 630 00:31:40,369 --> 00:31:41,910 Por lo tanto su velocidad se ha quedado a 0 631 00:31:41,910 --> 00:31:44,529 Son dos instancias distintas 632 00:31:44,529 --> 00:31:45,930 Hacen las mismas cosas 633 00:31:45,930 --> 00:31:47,130 Tienen los mismos parámetros 634 00:31:47,130 --> 00:31:49,630 Pero son dos instancias distintas 635 00:31:49,630 --> 00:31:58,759 Ahora voy a acelerar Falkor 636 00:31:58,759 --> 00:32:01,079 ¿Cuánto lo hacemos acelerar Falkor? 637 00:32:02,019 --> 00:32:09,619 ¿Cómo hago para que Falkor 638 00:32:09,619 --> 00:32:10,839 Vaya 80 km por hora? 639 00:32:16,559 --> 00:32:16,759 ¿Cómo? 640 00:32:22,349 --> 00:32:23,470 Big dos 641 00:32:23,470 --> 00:32:27,190 Porque voy a trabajar sobre el segundo objeto 642 00:32:27,190 --> 00:32:28,349 Punto 643 00:32:28,349 --> 00:32:30,910 Aquí tengo los métodos que quiero 644 00:32:30,910 --> 00:32:33,369 Tengo, incluye, fijaos que los métodos 645 00:32:33,369 --> 00:32:34,549 Nuevo que he creado yo 646 00:32:34,549 --> 00:32:35,670 Ahora aparecen aquí 647 00:32:35,670 --> 00:32:40,109 Entonces por ejemplo voy a utilizar esto 648 00:32:40,109 --> 00:32:44,049 Y ahora me dice 649 00:32:44,049 --> 00:32:46,930 ¿Qué valor le quieres poner aquí? 650 00:32:47,029 --> 00:32:48,069 Le tienes que poner un int 651 00:32:48,069 --> 00:32:49,529 80 hemos dicho 652 00:32:49,529 --> 00:32:54,960 Y si ahora vuelvo a preguntar 653 00:32:54,960 --> 00:32:56,339 A qué velocidad va 654 00:32:56,339 --> 00:32:58,000 Falkor 655 00:32:58,000 --> 00:33:11,380 Antes de llamar la aceleración 656 00:33:11,380 --> 00:33:12,819 Va a 0 km por hora 657 00:33:12,819 --> 00:33:15,200 Después de la deceleración 658 00:33:15,200 --> 00:33:16,220 Va a 80 659 00:33:16,220 --> 00:33:21,680 ¿Sí? 660 00:33:22,519 --> 00:33:27,640 Vamos a frenar 661 00:33:27,640 --> 00:33:33,640 Public 662 00:33:33,640 --> 00:33:34,779 Void 663 00:33:34,779 --> 00:33:35,980 Frena 664 00:33:35,980 --> 00:33:40,779 ¿Qué hace frena? 665 00:33:47,029 --> 00:33:48,390 X punto velocidad 666 00:33:48,390 --> 00:33:51,619 Para hacer 667 00:33:51,619 --> 00:33:59,349 Lo que queréis hacer con menos menos 668 00:33:59,349 --> 00:34:02,230 Os gusta así 669 00:34:02,230 --> 00:34:05,849 Así razonamos 670 00:34:05,849 --> 00:34:07,589 Esto sería guay 671 00:34:07,589 --> 00:34:08,969 Funciona 672 00:34:08,969 --> 00:34:11,730 Pero no se puede usar sin cero 673 00:34:11,730 --> 00:34:12,869 Si ya está en la velocidad 674 00:34:12,869 --> 00:34:15,050 Cuidado con lo que hacéis vosotros 675 00:34:15,050 --> 00:34:15,670 ¿Vale? 676 00:34:15,670 --> 00:34:18,750 Porque si aquí la velocidad es cero y yo freno 677 00:34:18,750 --> 00:34:23,809 Pues esta bicicleta no parte hacia atrás a velocidad menos uno 678 00:34:23,809 --> 00:34:28,570 Entonces, ¿cómo debería ser frena si lo quiero implementar casi? 679 00:34:44,619 --> 00:34:44,840 ¿Sí? 680 00:34:45,460 --> 00:34:49,980 Cuando llamo frena, si la velocidad es positiva, reduzco 681 00:34:49,980 --> 00:34:53,840 Si la velocidad ya es cero, no reduzco 682 00:35:00,219 --> 00:35:00,900 ¿Dudas? 683 00:35:01,500 --> 00:35:07,590 Entonces, ahora freno 684 00:35:07,590 --> 00:35:10,630 ¿Cómo freno con bicuno? 685 00:35:10,789 --> 00:35:21,000 ¿Cómo se frena con ARTAX? 686 00:35:22,820 --> 00:35:23,460 I1 687 00:35:23,460 --> 00:35:25,940 Junto frena 688 00:35:25,940 --> 00:35:29,590 Y si ahora pregunto otra vez 689 00:35:29,590 --> 00:35:31,769 ¿A cuánto va ARTAX? ¿Qué me debería dar? 690 00:35:36,570 --> 00:35:37,010 2 691 00:35:37,010 --> 00:35:41,050 Porque hemos dicho que reduce una vez 692 00:35:41,050 --> 00:35:42,489 Y si yo ahora freno 693 00:35:42,489 --> 00:35:47,150 5 veces o 4 veces 694 00:35:47,150 --> 00:35:48,630 ¿Cuánto me debería dar? 695 00:35:49,710 --> 00:35:54,349 0 696 00:35:54,349 --> 00:35:57,210 No va en negativo 697 00:35:57,210 --> 00:36:06,920 Ahora tengo dos objetos 698 00:36:06,920 --> 00:36:09,760 Estoy construyendo dos objetos distintos 699 00:36:09,760 --> 00:36:11,559 Y luego se pueden portar 700 00:36:11,559 --> 00:36:13,539 Y pueden hacer cosas distintamente 701 00:36:13,539 --> 00:36:14,340 Por separado 702 00:36:14,340 --> 00:36:18,219 ¿Dudas?