1 00:00:00,820 --> 00:00:24,480 Vale, pues aquí por ejemplo, aunque pudiera ser metido un poco por calzador, pues aquí por ejemplo, pues resulta que el gasto total, por ejemplo aquí que se hace en el cliente, 2 00:00:24,480 --> 00:00:27,019 el gasto total que se hace aquí 3 00:00:27,019 --> 00:00:29,260 en el cliente, imaginaos 4 00:00:29,260 --> 00:00:31,320 que tiene que incluir no solo el precio 5 00:00:31,320 --> 00:00:32,820 de los pedidos 6 00:00:32,820 --> 00:00:34,380 sino sumarle un IVA 7 00:00:34,380 --> 00:00:37,020 entonces ese IVA 8 00:00:37,020 --> 00:00:37,820 si lo 9 00:00:37,820 --> 00:00:41,380 cableamos o lo jarcodeamos 10 00:00:41,380 --> 00:00:43,259 directamente aquí multiplicándolo 11 00:00:43,259 --> 00:00:45,340 por 1,16 12 00:00:45,340 --> 00:00:47,159 o por lo que sea, pues hombre 13 00:00:47,159 --> 00:00:48,439 cada vez que el IVA cambie 14 00:00:48,439 --> 00:00:50,840 pues es un rollo porque hay que ir a la aplicación 15 00:00:50,840 --> 00:00:52,359 al código fuente y tocarlo 16 00:00:52,359 --> 00:01:08,079 Entonces, no queremos ponerle aquí una cantidad de IVA directamente sumada. Queremos que esté en una variable, ¿vale? Porque si está en una variable, lo podemos cambiar según haga falta. Bueno, pues ya nos llega la siguiente pregunta. ¿Y esa variable IVA dónde va? 17 00:01:08,079 --> 00:01:10,780 esa variable IVA es una propiedad 18 00:01:10,780 --> 00:01:13,379 de alguna de las entidades de mi aplicación 19 00:01:13,379 --> 00:01:15,239 no, los clientes 20 00:01:15,239 --> 00:01:17,420 no se caracterizan por su IVA 21 00:01:17,420 --> 00:01:19,299 ni los 22 00:01:19,299 --> 00:01:20,980 pedidos se caracterizan por su IVA 23 00:01:20,980 --> 00:01:23,299 en este contexto, podría haber otra aplicación en la que sí 24 00:01:23,299 --> 00:01:24,959 que el tipo de pedido 25 00:01:24,959 --> 00:01:26,859 tiene un IVA distinto o es una propiedad propia 26 00:01:26,859 --> 00:01:28,939 en este caso no, el IVA es igual 27 00:01:28,939 --> 00:01:30,000 para todos los pedidos 28 00:01:30,000 --> 00:01:32,180 luego en algún sitio hay que ponerlo 29 00:01:32,180 --> 00:01:34,840 pero reflejando que no es una propiedad 30 00:01:34,840 --> 00:01:36,959 unívoca para cada objeto 31 00:01:36,959 --> 00:01:41,280 pedido para cada objeto cliente, bueno entonces como esa variable 32 00:01:41,280 --> 00:01:45,200 IVA tiene que ver con pedidos y con sus precios 33 00:01:45,200 --> 00:01:48,900 no con clientes, o sea hay IVAs porque hay pedidos que compras, no porque existan 34 00:01:48,900 --> 00:01:53,000 clientes por el mundo, pues hombre vamos a ponerla en pedido, parece que pega 35 00:01:53,000 --> 00:01:56,879 más ahí, pues entonces cogemos la clase 36 00:01:56,879 --> 00:02:00,939 pedido y esa propiedad que tenemos que poner 37 00:02:00,939 --> 00:02:04,140 para guardar ese dato, la ponemos aquí 38 00:02:04,140 --> 00:02:15,560 vale, static 39 00:02:15,560 --> 00:02:17,719 pues el iba si queremos que tenga 40 00:02:17,719 --> 00:02:18,599 decimales 41 00:02:18,599 --> 00:02:21,060 polines, latino, ahí 42 00:02:21,060 --> 00:02:23,360 vale, pues ya la tenemos 43 00:02:23,360 --> 00:02:25,840 las variables cuando la ponemos 44 00:02:25,840 --> 00:02:27,819 static pues eclipse 45 00:02:27,819 --> 00:02:29,819 y cualquier otro entorno, creo 46 00:02:29,819 --> 00:02:31,060 las pone en cursiva 47 00:02:31,060 --> 00:02:33,919 entonces esta variable se pone 48 00:02:33,919 --> 00:02:35,560 aquí y ahora 49 00:02:35,560 --> 00:02:37,780 es una propiedad 50 00:02:37,780 --> 00:02:39,919 exactamente igual para todos 51 00:02:39,919 --> 00:02:41,620 los objetos pedidos, la misma 52 00:02:41,620 --> 00:02:43,560 por eso no la pasamos 53 00:02:43,560 --> 00:02:45,719 por constructor, porque no caracteriza 54 00:02:45,719 --> 00:02:46,939 no le hacemos get y set 55 00:02:46,939 --> 00:02:49,120 normalmente 56 00:02:49,120 --> 00:02:50,360 se hace public 57 00:02:50,360 --> 00:02:53,819 y ya está, para acceder con el nombre de la clase 58 00:02:53,819 --> 00:02:54,960 y se acabó 59 00:02:54,960 --> 00:02:58,909 si, pero bueno 60 00:02:58,909 --> 00:03:00,949 las propiedades suelen poner todas arriba 61 00:03:00,949 --> 00:03:02,229 para que se vea más claro 62 00:03:02,229 --> 00:03:04,990 vale, pues tenemos aquí este dato, esta información 63 00:03:04,990 --> 00:03:06,930 entonces podríamos 64 00:03:06,930 --> 00:03:07,610 por ejemplo 65 00:03:07,610 --> 00:03:11,009 darle valor al principio del main 66 00:03:11,009 --> 00:03:12,409 por ejemplo 67 00:03:12,409 --> 00:03:15,629 podemos darle valor en nuestro main 68 00:03:15,629 --> 00:03:17,810 aquí arriba, antes de que la aplicación arranque 69 00:03:17,810 --> 00:03:19,689 pues meter ya 70 00:03:19,689 --> 00:03:21,069 ese dato, por ejemplo 71 00:03:21,069 --> 00:03:28,509 introduzca 72 00:03:28,509 --> 00:03:30,710 iba 73 00:03:30,710 --> 00:03:37,280 entonces 74 00:03:37,280 --> 00:03:40,280 la propiedad 75 00:03:40,280 --> 00:03:40,719 iba 76 00:03:40,719 --> 00:03:42,659 es esta 77 00:03:42,659 --> 00:03:45,319 y le damos ya el valor 78 00:03:45,319 --> 00:03:47,520 scan.next 79 00:03:47,520 --> 00:03:50,919 ya está 80 00:03:50,919 --> 00:03:56,000 entonces aquí en este momento no existe todavía 81 00:03:56,000 --> 00:03:56,800 ningún objeto 82 00:03:56,800 --> 00:03:59,740 pedido, no existe ninguno 83 00:03:59,740 --> 00:04:01,060 pero no pasa nada 84 00:04:01,060 --> 00:04:03,099 la variable iba si existe 85 00:04:03,099 --> 00:04:05,560 vale, está así 86 00:04:05,560 --> 00:04:07,599 y tiene un valor 87 00:04:07,599 --> 00:04:10,039 pero no existe ningún objeto pedido 88 00:04:10,039 --> 00:04:12,020 pero es que esta variable 89 00:04:12,020 --> 00:04:14,080 va por libre, tiene que ver 90 00:04:14,080 --> 00:04:16,060 con los pedidos y por eso lo hemos metido 91 00:04:16,060 --> 00:04:18,019 en esa clase y por eso la llamamos 92 00:04:18,019 --> 00:04:19,800 con el nombre de esa clase 93 00:04:19,800 --> 00:04:21,980 pero no necesita que exista 94 00:04:21,980 --> 00:04:24,019 ningún objeto ni está asociado a ningún objeto 95 00:04:24,019 --> 00:04:26,139 y ahora esta variable 96 00:04:26,139 --> 00:04:27,939 pues se usa para lo que uno quiera, si la hemos 97 00:04:27,939 --> 00:04:29,300 creado es porque la necesitamos 98 00:04:29,300 --> 00:04:31,779 pues hemos dicho que por ejemplo la necesitamos aquí 99 00:04:31,779 --> 00:04:33,920 a la hora de calcular 100 00:04:33,920 --> 00:04:35,980 el gasto total del cliente 101 00:04:36,720 --> 00:04:38,399 hemos dicho que la necesitábamos 102 00:04:38,399 --> 00:04:40,139 ¿no? pues entonces el gasto 103 00:04:40,139 --> 00:04:42,360 total una vez que ya hemos hecho la suma acumulativa 104 00:04:42,360 --> 00:04:43,920 pues será 105 00:04:43,920 --> 00:04:46,420 suma más igual 106 00:04:46,420 --> 00:04:47,920 eh 107 00:04:47,920 --> 00:04:49,980 suma 108 00:04:49,980 --> 00:04:57,180 Suma por pedido punto IVA entre 100, ¿no? 109 00:05:02,139 --> 00:05:04,860 Y ahora ya devolveríamos suma. 110 00:05:11,629 --> 00:05:12,649 Vale, devolvemos suma. 111 00:05:12,730 --> 00:05:15,829 Entonces, esta variable la usamos desde donde queramos 112 00:05:15,829 --> 00:05:18,329 y no está asociada a que exista ningún objeto. 113 00:05:18,329 --> 00:05:19,730 Es como si fuera un dato global. 114 00:05:20,750 --> 00:05:22,509 Pero sí, está metida en una clase 115 00:05:22,509 --> 00:05:25,930 porque tiene un significado asociado a esa clase. 116 00:05:26,490 --> 00:05:27,750 En una clase tiene que estar metida. 117 00:05:28,269 --> 00:05:30,230 Pero no tiene que ver con que exista ningún objeto. 118 00:05:30,350 --> 00:05:32,569 ni nada, como una información 119 00:05:32,569 --> 00:05:34,089 compartida, por todos 120 00:05:34,089 --> 00:05:34,970 para hacer cosas 121 00:05:34,970 --> 00:05:48,850 vale, vamos a completar este 122 00:05:48,850 --> 00:05:54,110 main, con este 123 00:05:54,110 --> 00:05:56,410 método raro que era localizar un pedido 124 00:05:56,410 --> 00:05:58,110 dado un código, a ver que 125 00:05:58,110 --> 00:05:59,149 cliente lo ha hecho 126 00:05:59,149 --> 00:06:07,339 si, claro, venga