1
00:00:00,410 --> 00:00:01,920
Ya tenemos algunos atributos.

2
00:00:01,980 --> 00:00:08,280
Ahora vamos a implementar métodos, pero antes una corrección, acá puse impresa con S y en realidad

3
00:00:08,280 --> 00:00:10,230
con Z impresa con zeta.

4
00:00:10,530 --> 00:00:15,770
Un detalle nos vamos al automóvil, vamos a crear un par de métodos comportamiento.

5
00:00:15,780 --> 00:00:22,530
También se le conoce como funciones de la clase del objeto y también cómo los atributos tienen modificadores.

6
00:00:22,650 --> 00:00:27,270
Después vamos a entrar en detalles y tenemos distintos tipos de modificadores, tanto para atributos

7
00:00:27,300 --> 00:00:28,200
como para métodos.

8
00:00:28,230 --> 00:00:32,420
Pueden ser de acceso o cómo están ocultados oculto.

9
00:00:32,610 --> 00:00:35,370
Los atributos del resto, cómo se pueden ocultar?

10
00:00:35,430 --> 00:00:40,470
Como había mencionado, pueden ser públicos, pueden ser privados, pueden ser protegidos y también

11
00:00:40,470 --> 00:00:43,550
por defecto solamente del paquete o del package.

12
00:00:43,620 --> 00:00:49,530
Pero también tenemos otros modificadores que también vamos a ver, por ejemplo, final o final y también

13
00:00:49,650 --> 00:00:50,140
static.

14
00:00:50,340 --> 00:00:55,060
Vamos a ver que le Tatic hace que el atributo sea de la clase y no de la instancia.

15
00:00:55,080 --> 00:01:00,630
Después lo vamos a ver y final hace que el atributo sea una constante que no se puede modificar.

16
00:01:00,690 --> 00:01:05,040
Solamente se define una vez en la clase y después se puede utilizar.

17
00:01:05,160 --> 00:01:06,750
Eso es en el atributo.

18
00:01:06,870 --> 00:01:11,970
Un atributo constante no es una variable en el fondo, pero el método también puede ser estático y el

19
00:01:11,970 --> 00:01:13,230
método también puede ser final.

20
00:01:13,320 --> 00:01:14,310
Un método estático.

21
00:01:14,460 --> 00:01:19,860
Hemos visto varios ejemplo en clase de ella, como la clase matemática, como la clase system, que

22
00:01:19,860 --> 00:01:25,500
se pueden invocar de forma directa con la clase sin crear el objeto con la clase en nombre de la clase

23
00:01:25,500 --> 00:01:25,980
punto.

24
00:01:26,040 --> 00:01:29,820
El método, porque ese método no es el objeto, le pertenece a la clase.

25
00:01:30,000 --> 00:01:31,960
No es necesario tener que crear la instancia también.

26
00:01:31,970 --> 00:01:38,370
Después vamos a saber más detalles y los final métodos finales que evita que ese método se modifique

27
00:01:38,460 --> 00:01:39,240
en la herencia.

28
00:01:39,330 --> 00:01:45,030
Después lomás saber cuando lleguemos a la herencia superclase es heredar de una clase padre.

29
00:01:45,090 --> 00:01:46,200
En fin, después lo vamos a ver.

30
00:01:46,290 --> 00:01:51,180
Pero bueno, vamos a lo básico implementar un método en la clase automóvil.

31
00:01:51,380 --> 00:01:54,540
Bueno, un modificador de acceso, por ejemplo públic.

32
00:01:55,650 --> 00:01:57,510
Si se omite, queda por defecto.

33
00:01:58,200 --> 00:02:04,200
Entonces primero se define la firma o declaración del método, que también se le conoce como encabezado

34
00:02:04,380 --> 00:02:05,550
entonces modificador.

35
00:02:05,670 --> 00:02:12,060
El tipo de retorno lo que devuelve puede devolver un primitivo o un objeto asociado a un tipo de dato.

36
00:02:12,180 --> 00:02:15,240
Después de realizar un proceso hago una consulta, alguna tarea.

37
00:02:15,280 --> 00:02:21,180
Lo que sea algún cálculo puede retornar algo, un valor, pero también podrían no retornar nada.

38
00:02:21,660 --> 00:02:27,180
Por ejemplo, si colocamos Bay Bay en inglés es vacío, no retorna nada.

39
00:02:27,240 --> 00:02:30,090
Por lo tanto, sería una función o más que una función.

40
00:02:30,180 --> 00:02:33,570
Es un procedimiento que hace algo, pero no devuelve nada.

41
00:02:33,720 --> 00:02:36,780
Luego viene el nombre, por ejemplo, detalle.

42
00:02:36,900 --> 00:02:43,380
Yo quiero imprimir el detalle de los paréntesis y dentro de paréntesis pueden ir parámetros o argumentos

43
00:02:43,440 --> 00:02:44,100
del método.

44
00:02:44,190 --> 00:02:51,390
Justamente desde la clase main o incluso otros objetos dentro de otros métodos de otro objeto que interactúan,

45
00:02:51,500 --> 00:02:57,770
le podemos pasar datos valores al objeto automóvil invocando un método, detalle y pasando parámetros,

46
00:02:57,860 --> 00:03:01,430
y con esos parámetros podríamos hacer algo o alguna tarea también.

47
00:03:01,560 --> 00:03:05,490
Cualquier cosa, además de los atributos propios de la clase de estos atributos.

48
00:03:05,790 --> 00:03:11,030
Entonces podremos trabajar con parámetros externo del objeto, pero también con atributos internos.

49
00:03:11,400 --> 00:03:14,730
Pero por ahora va a ser un método simple, sin parámetros en nada.

50
00:03:14,880 --> 00:03:19,190
Luego viene el cuerpo del método con las llaves y acá tiene el contexto, el método.

51
00:03:19,560 --> 00:03:26,040
Si se fijan, es parecido al método main con el públic, el retorno, el nombre y parámetros.

52
00:03:26,580 --> 00:03:28,950
Y el cuerpo acá tiene el static.

53
00:03:29,110 --> 00:03:31,950
Porque este método es de la clase, no del objeto.

54
00:03:32,130 --> 00:03:34,600
Por lo tanto, se puede invocar directamente con el nombre de la clase.

55
00:03:34,680 --> 00:03:36,210
Pero después lo vemos más en detalle.

56
00:03:36,240 --> 00:03:41,910
Por ahora, este método es la instancia solamente por acceder a detalle creando un objeto con el NEO,

57
00:03:42,090 --> 00:03:45,030
ni un automóvil pudo embocar este método.

58
00:03:45,240 --> 00:03:51,720
Entonces, ahora la idea que este método detalle muestra el detalle del objeto lo imprima.

59
00:03:52,050 --> 00:03:54,930
Entonces vamos a seguir acá, vamos a copiar esto.

60
00:03:56,510 --> 00:03:58,580
Todo lo que tenemos acá lo cortamos.

61
00:04:00,440 --> 00:04:07,570
Y lo pegamos acá bien, pero acá hace referencia al objeto auto que le dimos acá el nombre de la variable

62
00:04:07,670 --> 00:04:15,040
auto, pero cuando estamos dentro de la misma clase, el nombre que toma esa instancia se llama tiz

63
00:04:15,280 --> 00:04:16,900
y esa es la importancia del objeto.

64
00:04:16,900 --> 00:04:22,570
Dice que se refiere a sí mismo dentro de la clase, es decir, dentro de la clase.

65
00:04:22,590 --> 00:04:25,840
Hago referencia a su instancia, al mismo objeto.

66
00:04:26,140 --> 00:04:27,610
Entonces, casi 10 días.

67
00:04:29,690 --> 00:04:35,960
Entonces, cada vez que quiero acceder a una tributo o a un método propio de la clase de la misma clase,

68
00:04:36,440 --> 00:04:43,820
contéis entonces sí voy a utilizar esta variable o atributo de la clase en un método de la misma clase.

69
00:04:43,860 --> 00:04:48,940
Condis dice Fabricante, modelo y así se fijan Condis.

70
00:04:49,190 --> 00:04:56,810
Ahora el diz se puede omitir también porque por defectos asume, por ejemplo, psicologica modelo.

71
00:04:56,910 --> 00:04:58,970
Está perfecto de forma automática.

72
00:04:59,030 --> 00:05:02,210
Toma y asume que se trata del atributo de la clase.

73
00:05:02,330 --> 00:05:03,950
Pero cuidado, no siempre.

74
00:05:04,520 --> 00:05:08,870
Qué pasa si acá tengo streeck modelo otro?

75
00:05:10,270 --> 00:05:16,670
Es decir, dentro del mismo método de la clase defino una variable que se llama igual, pero esta variable

76
00:05:16,670 --> 00:05:19,970
no es atributo de la clase, sino es una variable del método.

77
00:05:19,970 --> 00:05:25,460
Detalle se llama igual que al atributo modelo, pero son distintos, son distintas variables.

78
00:05:25,640 --> 00:05:25,880
1.

79
00:05:25,880 --> 00:05:34,370
El local del método y este es de la clase, y si hago esto va a tomar la variable que definimos acá.

80
00:05:34,580 --> 00:05:38,120
La variable local del método y no el atributo la clase.

81
00:05:38,690 --> 00:05:44,810
Entonces, si quiero utilizar o quiero hacer diferencia entre una variable local del método y un atributo,

82
00:05:44,810 --> 00:05:46,850
la clase que se llaman exactamente igual.

83
00:05:46,970 --> 00:05:50,720
Si quiero hacer esa diferencia, estoy obligado a utilizar el diz.

84
00:05:51,170 --> 00:05:58,040
Entonces, con el diz ya perfecto, me refiero acá al atributo modelo y no a este modelo.

85
00:05:58,520 --> 00:06:01,080
Otro Bijan, no esta variable local.

86
00:06:01,340 --> 00:06:02,420
Ahora sí me quiero referir.

87
00:06:02,510 --> 00:06:03,960
Al abrir el local quito el.

88
00:06:04,820 --> 00:06:10,550
Entonces por eso puede ocupar el diz para hacer referencia a un atributo de la clase, pero de forma

89
00:06:10,700 --> 00:06:11,510
explícita.

90
00:06:12,480 --> 00:06:18,640
Ahora, si Quito, por ejemplo, el dicen color de forma automática asume que se trata del atributo

91
00:06:18,660 --> 00:06:22,290
de clase color, porque no hay otra variable local del método que se llame igual.

92
00:06:22,320 --> 00:06:27,450
Pero si hubiera como modelo, estaría obligado a utilizar el diseño importante, la aviación, cosa

93
00:06:27,460 --> 00:06:31,320
que vamos a ir practicando y afinando a lo largo del curso.

94
00:06:31,530 --> 00:06:32,370
Así que no se preocupen.

95
00:06:32,490 --> 00:06:36,330
Esto es la primera mirada a estos detalles que son importantes.

96
00:06:36,510 --> 00:06:38,710
Por ejemplo, cilindrada lo podría omitir.

97
00:06:38,730 --> 00:06:42,050
También lo podría dejar de forma explícita omitir.

98
00:06:42,810 --> 00:06:48,300
Ahora bien, quizá como buena práctica o recomendación, siempre es bueno ser más explícito que implícito

99
00:06:48,520 --> 00:06:51,720
y sobre todo cuando se está partiendo después, cuando ya se tiene más experiencia.

100
00:06:51,790 --> 00:06:53,610
Bueno, esto es casi automático.

101
00:06:53,790 --> 00:06:59,250
Se podría omitir o no, pero por lo menos al comenzar al partir programando 30 objetos siempre es bueno

102
00:06:59,280 --> 00:07:02,790
ser más explícito para tener el concepto más claro y bello.

103
00:07:02,880 --> 00:07:06,510
Visualizar el código de forma más clara, más directa, más explícita.

104
00:07:08,940 --> 00:07:10,840
Entonces acá dice Modelo.

105
00:07:11,270 --> 00:07:14,090
Va a tomar este Daka de la clase, el atributo, la clase.

106
00:07:14,570 --> 00:07:22,220
En este caso impresa o BT 50, dependiendo si mata o auto auto Subaru.

107
00:07:23,470 --> 00:07:29,040
Entonces hay que tener claros esos detalles, como tenemos detalle, nuestro primer método del tipo

108
00:07:29,050 --> 00:07:30,660
público no Retornã nada.

109
00:07:32,110 --> 00:07:38,080
Entonces ahora esto lo podremos quitar porque ya están un método y voy a renombrar acá Subaru.

110
00:07:43,100 --> 00:07:48,260
Para hacer un poco más explícito de qué se trata el objeto Subaru y acataremos Magna, entonces ahora

111
00:07:48,410 --> 00:07:51,670
por ejemplo, Subaru punto, detalla.

112
00:07:54,970 --> 00:07:55,620
Magda.

113
00:07:57,040 --> 00:07:57,740
Punto.

114
00:07:57,880 --> 00:07:58,540
Detalla.

115
00:08:00,130 --> 00:08:01,840
Entonces vamos a enfocar el detalle.

116
00:08:01,930 --> 00:08:06,820
El método detalle de cada uno de cada objeto iba a mostrar sus datos.

117
00:08:11,350 --> 00:08:16,700
Se fijan y estamos reutilizando el código mucho más limpio y de ahí la importancia de utilizar métodos.

118
00:08:17,240 --> 00:08:23,480
Ahora bien, acá estamos utilizando el sistema punto.com print, estamos imprimiendo dentro de la clase

119
00:08:23,800 --> 00:08:29,310
para este ejemplo en un contexto simple está bien, pero bueno, buena práctica dentro de una clase.

120
00:08:29,420 --> 00:08:36,110
Nunca se debería de imprimir datos, es decir, dentro de una clase o de un objeto que representa datos.

121
00:08:36,620 --> 00:08:42,200
En el caso de una clase de aplicación con el método Main estaría perfecto, pero en el caso tu móvil

122
00:08:42,530 --> 00:08:44,540
no es tan buena práctica.

123
00:08:44,630 --> 00:08:45,230
Imprimir.

124
00:08:45,350 --> 00:08:50,930
La idea es que los métodos ejecuten algún proceso, lleven a cabo alguna tarea, pero que no sea imprimir

125
00:08:50,930 --> 00:08:52,190
datos en la consola.

126
00:08:52,310 --> 00:08:57,380
La idea que maneje datos y cualquier información en vez de imprimirla, la debería de devolver.

127
00:08:57,440 --> 00:08:59,480
Por lo tanto, acá podríamos tener un ratón.

128
00:08:59,630 --> 00:09:03,050
Devolver los datos resumidos en un detalle.

129
00:09:03,170 --> 00:09:09,530
Por ejemplo, el tipo de streeck y la clase automóvil la imprimimos en la clase con el método main ejemplo

130
00:09:09,550 --> 00:09:09,980
automóvil.

131
00:09:10,100 --> 00:09:15,800
Ahí la imprimimos y además se acopla demasiado a una sola forma de imprimir.

132
00:09:16,010 --> 00:09:22,970
Está imprimiendo Consolata y la idea es retornar los datos y acá se podrá imprimir en consola o se podría

133
00:09:22,970 --> 00:09:25,940
guardar en un archivo o se podrían ver por correo.

134
00:09:26,060 --> 00:09:28,590
Se fijan si estamos trabajando en una aplicación web?

135
00:09:28,850 --> 00:09:34,350
Lo podremos imprimir en el HTML, exportar a PDF, en fin, que es mucho más reutilizable.

136
00:09:34,490 --> 00:09:41,300
Acá lo amarra, queda muy acoplado a una sola forma o implementación de imprimir, que sería con el

137
00:09:41,300 --> 00:09:44,150
sistema o Pringle, es decir, imprimir en consola.

138
00:09:44,720 --> 00:09:48,010
La idea que no quede acoplado no queda amarrado.

139
00:09:48,440 --> 00:09:54,290
Ratón de los datos y los datos después se pueden imprimir afuera, en cualquier otra parte, de cualquier

140
00:09:54,290 --> 00:09:55,550
otra forma como queramos.

141
00:09:56,330 --> 00:10:03,040
Entonces la idea esto es modificar, por ejemplo, strict cartonear un streeck.

142
00:10:03,550 --> 00:10:07,520
Esto yo lo voy a quitar porque era solamente para explicar el tema del tiz.

143
00:10:07,790 --> 00:10:13,490
Esto lo quito, vamos a tener un streeck Builder, creo que lo vimos por ahí.

144
00:10:14,240 --> 00:10:15,440
Se ve igual.

145
00:10:15,680 --> 00:10:20,750
Voy a utilizar el String Builder para concatenar, pero podría ser con más de lo mismo.

146
00:10:20,870 --> 00:10:21,290
Perfecto.

147
00:10:21,380 --> 00:10:28,480
Entonces, ahora en vez de imprimir vamos a concatenar estos datos y lo devolvemos en el método como

148
00:10:28,480 --> 00:10:29,000
un strict.

149
00:10:29,130 --> 00:10:33,980
Lo retornamos entonces por acá ese punto, apunta.

150
00:10:35,970 --> 00:10:36,480
Appen.

151
00:10:37,660 --> 00:10:38,650
Y así por cada uno.

152
00:10:50,410 --> 00:10:56,770
Y retornamos en ese punto, lo convertimos a una cadena.

153
00:10:56,890 --> 00:11:02,690
La palabra clave rotaron es muy importante porque nos permite devolver o retornar un valor, ya sea

154
00:11:02,690 --> 00:11:06,130
a un objeto, como en este caso un tren, o de cualquier otro tipo.

155
00:11:06,220 --> 00:11:07,360
O también primitivos.

156
00:11:08,070 --> 00:11:12,790
Pero es para devolver un valor, para devolver algo, un valor o un objeto.

157
00:11:13,030 --> 00:11:14,050
Y después saca.

158
00:11:15,120 --> 00:11:17,340
Lo que hacemos imprimir porque qué pasa?

159
00:11:17,490 --> 00:11:22,480
Ahora se ejecutó, no pasa nada porque detalle lo que hace retornar un estreno, pero que ahora tenemos

160
00:11:22,500 --> 00:11:23,790
que imprimir.

161
00:11:24,100 --> 00:11:25,500
Entonces, por ejemplo, sought.

162
00:11:28,540 --> 00:11:34,950
ñaca lo imprimimos, te Bijan estos Rotondo Metric, imprimimos Selectric y atomismo acá.

163
00:11:39,180 --> 00:11:39,600
Ahora si.

164
00:11:41,720 --> 00:11:42,230
Se fijan?

165
00:11:42,370 --> 00:11:46,330
Bueno, me lo reprimido por al lado, eso también lo podemos corregir, por ejemplo, con salto línea.

166
00:11:46,580 --> 00:11:51,420
Recuerden que por acá agregar el pack Select N de New Line.

167
00:11:51,890 --> 00:11:52,850
Y así por cada uno.

168
00:12:01,180 --> 00:12:04,640
Ya tenemos nada más, continuamos en la siguiente clase.
