1
00:00:00,390 --> 00:00:05,510
Vamos a ver, los constructores de la clase ya vimos que se puede crear una instancia con el nuevo invoca

2
00:00:05,510 --> 00:00:10,380
a un constructor, pero si se fijan este constructor no está definido de forma explícita.

3
00:00:10,590 --> 00:00:16,020
En esta clase ya viene uno por defecto, si no se escribe o si no se implementa o un constructor de

4
00:00:16,020 --> 00:00:16,890
forma automática.

5
00:00:16,920 --> 00:00:21,130
Por detrás de escena viene uno implementado, vacío, sin parámetros.

6
00:00:21,130 --> 00:00:24,540
Tiene argumento y no hace nada, solamente crea la instancia.

7
00:00:24,670 --> 00:00:31,050
Entonces, la idea de esta clase de crear un constructor bueno de forma explícita o no públic por defecto

8
00:00:31,050 --> 00:00:37,050
son públic siempre o fold, pero muy rara vez puede ser un constructor privado solamente para implementar

9
00:00:37,140 --> 00:00:40,560
algún tipo de patrón de diseño, pero después vamos a ver un par de ejemplos.

10
00:00:40,590 --> 00:00:46,110
Pero por ahora Públic tiene que llevar el mismo nombre que la clase exactamente igual automóvil comenzando

11
00:00:46,260 --> 00:00:49,700
con mayúscula parentesis.

12
00:00:50,360 --> 00:00:53,010
Y esto es todo tipo de retorno no lleva.

13
00:00:53,010 --> 00:00:54,790
Se fija en públic nombre la clase.

14
00:00:55,040 --> 00:00:59,460
Bueno, se puede decir que voy porque no Retornã nada solamente para inicializar.

15
00:00:59,580 --> 00:01:05,340
Es como un método especial de la clase para definir algún proceso de inicialización que prepare el objeto

16
00:01:05,340 --> 00:01:06,870
para poder ser usado.

17
00:01:06,950 --> 00:01:07,530
Nada más.

18
00:01:07,810 --> 00:01:13,350
Bueno, si se colocacion no hace nada, pero acá podríamos pasar Parãmetros argumento como cualquier

19
00:01:13,350 --> 00:01:18,890
método, cualquier tipo de parámetro y también cualquier número, como por ejemplo el fabricante modelo

20
00:01:18,900 --> 00:01:24,540
el color y podríamos inicializar estos datos acá en el constructor cuando se crea el objeto y en ese

21
00:01:24,540 --> 00:01:29,490
caso no sería necesario tener que implementar o utilizar los set fabricantes.

22
00:01:29,490 --> 00:01:35,120
El modelo no, porque lo podríamos pasar por acá el constructor como argumento bueno, y eso es lo que

23
00:01:35,120 --> 00:01:36,300
queremos hacer en esta clase.

24
00:01:36,540 --> 00:01:44,170
Entonces acá tenemos este constructor, streeck, fabricante y también el modelo.

25
00:01:47,400 --> 00:01:48,030
Eso por ahora.

26
00:01:48,670 --> 00:01:57,090
Y acá con tiz punto fabricante, igual fabricante, disputo modelo.

27
00:01:57,990 --> 00:02:00,780
Se fijan muy parecido al set, pero mediante constructor.

28
00:02:01,470 --> 00:02:03,030
Así de simple y listo.

29
00:02:03,150 --> 00:02:04,350
Ahí lo tenemos ahora.

30
00:02:04,470 --> 00:02:08,910
El problema es que a cada error se fijan porque requerimos el constructor.

31
00:02:09,330 --> 00:02:14,190
Ya no tienen un constructor vacío por defecto cuando simplemente un constructor con parámetros este

32
00:02:14,190 --> 00:02:17,350
constructor por defecto sin argumento desaparece.

33
00:02:17,550 --> 00:02:22,380
Por lo tanto, bueno, podríamos implementar uno, es decir, podríamos tener más de un constructor,

34
00:02:22,470 --> 00:02:28,290
uno con parámetros, otros sin parámetros, otro con tres parámetros, otro con cuatro y así podríamos

35
00:02:28,290 --> 00:02:30,690
tener distintas versiones de constructores.

36
00:02:30,890 --> 00:02:34,110
Eso se le conoce como sobrecarga de constructor, pero después lo vamos a ver.

37
00:02:34,140 --> 00:02:36,960
Por ahora vamos a tener un parámetro, marca el error.

38
00:02:37,230 --> 00:02:38,580
Eso después lo vamos a solucionar.

39
00:02:38,600 --> 00:02:39,000
Por qué?

40
00:02:39,140 --> 00:02:40,260
Bueno, ahora en realidad?

41
00:02:41,400 --> 00:02:44,530
Qué cortamos acá y lo pasamos acá Subaru.

42
00:02:45,400 --> 00:02:48,450
Cortamos acá y lo pasamos acá impresa.

43
00:02:48,450 --> 00:02:51,430
Impreza Se fijan ahí desaparece el error y esto lo quitamos.

44
00:02:51,910 --> 00:02:56,860
De qué estamos creando el objeto inicial izando con el fabricante y el modelo?

45
00:02:57,540 --> 00:03:00,490
La cilindrada y el color se lo pasamos mediante C.T.

46
00:03:10,220 --> 00:03:14,910
Y otro detalle importante que hay que saber es que los constructores solamente se pueden llamar con

47
00:03:14,910 --> 00:03:15,270
el miedo.

48
00:03:15,480 --> 00:03:19,920
No se pueden invocar como método, por ejemplo, no colocar más, apuntó el constructor.

49
00:03:20,040 --> 00:03:24,780
No, porque no es un método común y corriente, es un método especial para crear la instancia, para

50
00:03:24,900 --> 00:03:31,440
inicializar el objeto con valores por defecto, pasando parámetros, inicializar en los atributos o

51
00:03:31,440 --> 00:03:35,910
incluso si estamos trabajando con jdbc, con paseada o con recursos.

52
00:03:35,940 --> 00:03:41,880
Podríamos tener una clase de conexión a la Hayato y podríamos conectarnos, inicializar esta conexión

53
00:03:41,970 --> 00:03:46,410
en el constructor o no solamente una conexión a la base, sino puede ser cualquier tipo de recurso,

54
00:03:46,530 --> 00:03:50,070
abrir un archivo, conectar a un servidor lo que queramos.

55
00:03:50,160 --> 00:03:56,910
Entonces, como tenemos el fabricante y el modelo, incluso podríamos prescindir del fabricante o también

56
00:03:56,910 --> 00:03:58,200
lo podríamos mantener como queramos.

57
00:03:58,230 --> 00:04:03,510
Podríamos tener dos formas de pasar el fabricante mediante constructor y también mediante métodos C.T.

58
00:04:03,840 --> 00:04:09,390
Ser fabricante o bien podría manejar solamente constructor y podríamos eliminar ese fabricante.

59
00:04:09,540 --> 00:04:14,580
Bueno, todo eso depende de nuestro diseño y de cómo queramos crear nuestra clase, implementarla.

60
00:04:14,670 --> 00:04:17,100
No hay una sola forma de implementar.

61
00:04:17,220 --> 00:04:21,350
No hay una regla que nos diga que tenemos que tener constructor, que tenemos que tener métodos C.T.

62
00:04:21,450 --> 00:04:23,740
En fin, todo depende de nosotros como arrollador.

63
00:04:24,030 --> 00:04:27,160
Qué pasa si yo quisiera, por ejemplo, Zacatenco?

64
00:04:27,270 --> 00:04:27,820
Nada.

65
00:04:27,870 --> 00:04:33,750
Tengo Subaru, pero quiero tener otro automóvil por acá, otro vamos a crear otro,

66
00:04:36,810 --> 00:04:40,310
por ejemplo, un Nissan NIU automóvil.

67
00:04:42,490 --> 00:04:45,180
Ya, pero el Nissan lo quiero sin parámetros.

68
00:04:45,310 --> 00:04:50,160
Creo crear instancias sin parámetros y después posteriormente de forma dinámica.

69
00:04:50,220 --> 00:04:56,490
Por ejemplo, con alguna consulta la auto podría pasar, el fabricante y el modelo y los demás datos.

70
00:04:56,820 --> 00:04:59,700
En ese caso sí necesito un constructor vacío.

71
00:04:59,970 --> 00:05:02,970
Además de este de acá, lo podemos crear.

72
00:05:03,030 --> 00:05:06,870
Podríamos tener otro constructor public.

73
00:05:09,940 --> 00:05:13,240
Y eso todos se fijan, no hace nada.

74
00:05:13,350 --> 00:05:13,860
Pero.

75
00:05:14,850 --> 00:05:20,630
No permite crear el objeto sin parametro y hoy tenemos dos versiones sobre carga, igual que método

76
00:05:20,650 --> 00:05:21,330
jet set.

77
00:05:21,840 --> 00:05:29,700
Podríamos quitar esto, eliminarlo con click derecho en generated por acá o también se pueden ir acá

78
00:05:29,820 --> 00:05:35,160
en COV y generated cualquiera de las dos formas constructor y acasa, aleccionó.

79
00:05:35,190 --> 00:05:41,250
Por ejemplo, si no quiero ningún parámetro, un constructor vacío contra click de Marco.

80
00:05:41,350 --> 00:05:44,940
OK, acá tengo un constructor sin nada.

81
00:05:47,060 --> 00:05:49,310
Voy a crear otro click derecho.

82
00:05:49,340 --> 00:05:49,960
Generated.

83
00:05:52,700 --> 00:05:58,190
Voy a marcar fabricante y modelo esos dos o que se fijan de forma automática.

84
00:05:58,400 --> 00:06:00,850
Lo mismo que hicimos a comienzo, pero bueno con el.

85
00:06:01,480 --> 00:06:07,700
Entonces para resumir el constructor eBay no devuelve nada, pero el BEUC tampoco se coloca en la declaración

86
00:06:07,700 --> 00:06:08,390
de constructor.

87
00:06:08,570 --> 00:06:11,480
No va y tampoco es un miembro de la clase.

88
00:06:11,600 --> 00:06:17,910
No es un método, solo es invocado cuando se crea el objeto con el operón y no se puede llamar.

89
00:06:17,990 --> 00:06:22,000
No se puede invocar de forma explícita, como si fuera otro método solamente con el mio.

90
00:06:22,340 --> 00:06:22,920
Nada más.

91
00:06:23,000 --> 00:06:24,820
Continuamos en la siguiente clase.
