1
00:00:00,150 --> 00:00:02,640
Bienvenidos, veamos una introducción a las variables.

2
00:00:02,750 --> 00:00:09,540
Ya lo primero ya es fuertemente tipado cualquier variable que se defina en la aplicación tiene que estar

3
00:00:09,540 --> 00:00:16,210
asociada a un tipo auto, ya sea si es primitivo, representa un solo valor o bien si es un objeto o

4
00:00:16,210 --> 00:00:18,700
un tipo de una clase menos, cosa que vamos a ver después.

5
00:00:18,870 --> 00:00:19,640
Pero sigamos.

6
00:00:19,770 --> 00:00:20,670
Qué son las variables?

7
00:00:20,850 --> 00:00:25,970
Bueno, es lo más importante que tiene el lenguaje de programación, ya que representa la lógica negocio.

8
00:00:26,330 --> 00:00:28,140
Y qué significa esto de lógica negocio?

9
00:00:28,210 --> 00:00:33,150
Son los datos, es información, datos, valores de nuestro programa.

10
00:00:33,240 --> 00:00:39,750
Una declaración de una variable siempre está formado por dos partes primero, el tipo de dato y el nombre

11
00:00:39,810 --> 00:00:40,440
de esta variable.

12
00:00:40,580 --> 00:00:44,850
Bueno, recuerden que el tipo dato es el tipo al cual pertenece esta variable.

13
00:00:44,880 --> 00:00:49,870
Por ejemplo, si la variable es un objeto y este objeto es una instancia de la clase usuario.

14
00:00:49,950 --> 00:00:54,840
Por poner un ejemplo, no es importante que lo comprendan 100 por ciento porque todavía no vemos clases

15
00:00:54,870 --> 00:00:55,530
ni objeto.

16
00:00:55,650 --> 00:01:01,500
Después vamos a ver, pero si esta variable es una instancia de la clase usuario, el tipo es usuario,

17
00:01:01,660 --> 00:01:03,090
el mismo nombre de la clase.

18
00:01:03,240 --> 00:01:10,830
Otro ejemplo tenemos un tipo numérico, pero ese tipo numérico es un objeto y es una instancia de la

19
00:01:10,830 --> 00:01:12,790
clase Integer de Java.

20
00:01:12,870 --> 00:01:18,000
El tipo de dato es Integer, entonces siempre está formado por el tipo dato y el nombre.

21
00:01:18,120 --> 00:01:24,120
Bueno, en realidad no siempre, porque hace poco en la versión 10 hay un tipado dinámico que permite

22
00:01:24,120 --> 00:01:26,730
definir una variable con la palabra clave.

23
00:01:27,300 --> 00:01:33,240
Bueno, igual que scrip, igual que Python, que permite un tipado dinámico y más flexible.

24
00:01:33,300 --> 00:01:37,020
Pero bueno, esto es una característica nueva de Java, pero después lo vamos a ver con ejemplos.

25
00:01:37,110 --> 00:01:38,760
Así que por ahora no se preocupen.

26
00:01:38,880 --> 00:01:44,770
Lo importante es que siempre una variable se asocia a un tipo auto y por ahora es fuertemente tipado.

27
00:01:44,850 --> 00:01:48,210
Pero no solamente eso, porque también un tipo de dato a la sociedad.

28
00:01:48,210 --> 00:01:54,030
Esta variable determina qué cosa o qué valor o qué objeto puede contener esa variable.

29
00:01:54,120 --> 00:01:59,820
Por ejemplo, si tengo un Arial de que del tipo string, es decir, un texto del tipo texto, un string

30
00:01:59,970 --> 00:02:01,890
de Java no puede guardar un número.

31
00:02:02,030 --> 00:02:04,020
Un tipo integer, por ejemplo.

32
00:02:04,130 --> 00:02:09,900
Entonces importante que lo que vayamos a guardar en esa variable corresponda al tipo gato y también

33
00:02:09,990 --> 00:02:15,180
según el tipo gato, es las operaciones que podemos hacer con esa variable, con ese objeto.

34
00:02:15,240 --> 00:02:21,060
Por ejemplo, si el tipo integer es un número, lo podemos sumar, multiplicar, dividir operaciones

35
00:02:21,060 --> 00:02:26,520
aritméticas, pero por ejemplo, no podemos concatenar un número, pero sí podemos concatenar cadenas

36
00:02:26,640 --> 00:02:27,180
o string.

37
00:02:27,360 --> 00:02:28,320
Se fija entonces?

38
00:02:28,440 --> 00:02:35,160
Depende si es un string o número, o si es del tipo usuario, un objeto del tipo usuario o si es una

39
00:02:35,160 --> 00:02:35,820
factura.

40
00:02:35,910 --> 00:02:36,330
En fin.

41
00:02:36,450 --> 00:02:40,530
Dependiendo el tipo de dato, son las operaciones que podemos realizar con ese objeto.

42
00:02:40,620 --> 00:02:44,880
No se preocupen, porque mucho de este concepto que todavía no vemos, a medida que avancemos en el

43
00:02:44,880 --> 00:02:49,200
curso van a quedar claro y vamos a seguir profundizando cada uno de estos temas.

44
00:02:50,120 --> 00:02:54,400
Hay dos categorías de tipos de datos que serían los datos principales que podemos crear en Ya.

45
00:02:54,470 --> 00:02:59,080
Por un lado tenemos los datos primitivos que se le conoce como tipos simple, ya que solamente contienen

46
00:02:59,090 --> 00:03:01,070
valor un tipo primitivo número.

47
00:03:01,100 --> 00:03:06,290
Por ejemplo, sería inte de ellas y contiene solamente el valor numérico, nada más.

48
00:03:06,350 --> 00:03:09,590
Pero no solamente tenemos los tipos numéricos o enteros.

49
00:03:09,650 --> 00:03:15,500
También tenemos los tipos flotante decimales, los caracteres que representan un solo carácter, una

50
00:03:15,500 --> 00:03:18,200
letra o un dígito y también tenemos los bolivianos.

51
00:03:18,260 --> 00:03:22,940
Tru o fouls representan un valor de verdad o un valor falso.

52
00:03:23,030 --> 00:03:25,880
Entonces los primitivos contienen un solo valor.

53
00:03:25,970 --> 00:03:27,680
No es un objeto, no es una instancia.

54
00:03:27,710 --> 00:03:34,130
Pueden ser enteros del tipo numérico, flotantes, decimales o un carácter o poliana, y por eso también

55
00:03:34,130 --> 00:03:36,350
se dice que ya no es 100 por ciento.

56
00:03:36,440 --> 00:03:42,830
Oriento objeto, es 99 por ciento, oriento objeto, pero hay un 1 por ciento que no lo es y justamente

57
00:03:42,830 --> 00:03:44,950
son los tipos primitivos tipo primitivo.

58
00:03:44,960 --> 00:03:51,110
No son objetos, son valores y tenemos el segundo tipo o categoría de los tipo de datos, que es el

59
00:03:51,110 --> 00:03:53,720
de referencia, que es un tipo más complicado, más complejo.

60
00:03:53,780 --> 00:03:56,690
Por ejemplo, los tipos de una clase o un objeto.

61
00:03:56,780 --> 00:03:58,670
Un objeto es una instancia de una clase.

62
00:03:58,790 --> 00:03:59,870
Es un tipo de referencia.

63
00:03:59,900 --> 00:04:05,960
Tiene una estructura de datos más compleja, ya que no es solamente un valor, sino representa una entidad

64
00:04:05,960 --> 00:04:11,840
completa, con características, con atributos, con comportamiento, funciones, que son los métodos,

65
00:04:11,960 --> 00:04:16,430
atributos son las variables o características, un arreglo, por ejemplo.

66
00:04:16,520 --> 00:04:21,230
También es un tipo de referencia, también tiene atributos y hay otros más que también lo vamos a ver.

67
00:04:21,290 --> 00:04:24,470
Por ejemplo, las interfaces y también los enumerados.

68
00:04:24,480 --> 00:04:24,840
Es bueno.

69
00:04:25,040 --> 00:04:31,310
La interface también es un tipo de dato que para indicar comportamiento de un objeto en particular,

70
00:04:31,340 --> 00:04:37,550
por ejemplo, un objeto está asociado a interfaz y esa interfaz dice qué cosa o qué operaciones va a

71
00:04:37,550 --> 00:04:38,720
realizar ese objeto.

72
00:04:38,840 --> 00:04:43,490
Es como un contrato de implementación, pero no se preocupen porque estos temas lo vamos a ver después

73
00:04:43,550 --> 00:04:44,570
con mayor profundidad.

74
00:04:44,630 --> 00:04:49,910
Por ahora son solamente conceptos que estoy mencionando, nada bien y ejemplos para definir una variable.

75
00:04:49,970 --> 00:04:53,810
Recordemos que son dos partes principales el tipo dato y el nombre.

76
00:04:53,930 --> 00:04:59,050
Acá tenemos el tipo primitivo IMP, comenzando en minúscula y el nombre de la variable.

77
00:04:59,410 --> 00:05:06,590
Acá tenemos otra declaración de la variable número del tipo entero primitivo int, pero acá le asignamos

78
00:05:06,590 --> 00:05:07,010
un valor.

79
00:05:07,100 --> 00:05:09,320
El valor 10 se fijan es solamente un valor.

80
00:05:09,470 --> 00:05:15,770
Acá tenemos otro ejemplo, pero es del tipo intuyes iniciando con mayúscula intuyes muy parecido al

81
00:05:15,890 --> 00:05:21,500
int, pero este primitivo y el integer del tipo de una clase y también le asignamos el valor.

82
00:05:21,500 --> 00:05:21,860
10.

83
00:05:22,010 --> 00:05:26,480
La diferencia entre integer y int primitivo versus clase.

84
00:05:26,590 --> 00:05:29,060
La clase integer después la vamos a ver en detalle.

85
00:05:29,120 --> 00:05:33,500
Por ahora entender que INT es primitivo, integer es de referencia.

86
00:05:33,650 --> 00:05:41,180
La clase intis y también es Trenc también de referencia representa una cadena, un texto es una secuencia

87
00:05:41,270 --> 00:05:43,070
de caracteres y otro ejemplo.

88
00:05:43,130 --> 00:05:48,980
Acá tenemos usuario el tipo usuario nombre de la variable, igual un objeto.

89
00:05:49,100 --> 00:05:55,380
Acá se crea una instancia con el operador NIU de la clase usuario con el nombre Andress, pero no importa.

90
00:05:55,400 --> 00:06:00,200
También después lo vemos en detalle, pero es importante entender por ahora que una variable tiene dos

91
00:06:00,200 --> 00:06:04,910
partes tipo dato y el nombre independientes es primitivo o de referencia.

92
00:06:06,220 --> 00:06:11,810
Y por último, no es llegar y definir una variable en llevá, tiene que ver ciertas reglas importantes

93
00:06:11,810 --> 00:06:12,710
que tenemos que cumplir.

94
00:06:12,740 --> 00:06:19,210
Por ejemplo, por convención siempre un nombre de variable debe comenzar iniciar con una letra minúscula.

95
00:06:19,340 --> 00:06:22,250
A diferencia de las clases, se acuerdan cuando se crea una clase?

96
00:06:22,310 --> 00:06:29,030
La clase comienza con mayúscula, pero las variables comienzan con minúscula y eso importante debe ser

97
00:06:29,090 --> 00:06:32,750
un juego de carácter comprendido en la codificación Unicode.

98
00:06:32,900 --> 00:06:38,330
Es decir, no puede tener caracteres especiales, solamente alfabéticos, y también puede tener números,

99
00:06:38,390 --> 00:06:42,530
pero con una acepción un nombre variable no puede comenzar con un número.

100
00:06:42,740 --> 00:06:47,770
Eso no tiene que comenzar con una letra de la hasta la Z y después pueden ir números.

101
00:06:47,880 --> 00:06:53,240
Entonces siempre Unicode un juego de caracteres simple sin caracteres especiales.

102
00:06:53,330 --> 00:06:59,330
A eso me refiero, sin eñe, sin acentos, sin espacios en blanco y sin símbolos, sin arroba, sin

103
00:06:59,440 --> 00:07:00,140
gato.

104
00:07:00,320 --> 00:07:07,190
En fin, el único símbolo que se soportan y se aceptan es el signo peso o de dólar y el guion bajo o

105
00:07:07,250 --> 00:07:07,970
subrayado.

106
00:07:08,090 --> 00:07:12,530
Esos son los dos únicos caracteres especiales que se aceptan como nombre de variable, pero de esta

107
00:07:12,530 --> 00:07:14,830
forma hay que evitar utilizarlo.

108
00:07:14,990 --> 00:07:21,490
No se usa mucho en Java, más que nada alfanumérico, y tampoco puede ser una palabra reservada del

109
00:07:21,500 --> 00:07:23,180
lenguaje o palabra clave.

110
00:07:23,240 --> 00:07:29,060
Por ejemplo, un nombre variable que se llame Clas no lo podemos usar porque class es una palabra clave

111
00:07:29,120 --> 00:07:29,840
reservada.

112
00:07:29,930 --> 00:07:37,430
Tampoco podemos usar, por ejemplo, if o For, que son flujos de control palabra reservada o null null.

113
00:07:37,460 --> 00:07:43,580
También una palabra reservada o bboy también o tru o Fool's que representa un valor poliana.

114
00:07:43,730 --> 00:07:47,000
Es decir, ninguna palabra reservada del lenguaje se puede utilizar.

115
00:07:47,060 --> 00:07:49,460
Tampoco puede tener un nombre que ya existe.

116
00:07:49,520 --> 00:07:54,890
Por ejemplo, si ya se definió una variable y la volvemos a definir, no hay conflictos de nombre.

117
00:07:55,010 --> 00:07:57,440
Existe esa variable dentro de ese contexto.

118
00:07:57,590 --> 00:08:02,810
Entonces tenemos que usar otro nombre, pero siempre dentro del mismo contexto, porque, por ejemplo,

119
00:08:02,810 --> 00:08:08,600
si tenemos una clase que tiene un atributo, una variable, pero de la clase y esa clase tiene un método

120
00:08:08,720 --> 00:08:14,750
y ese método tiene una variable que propia del método, es decir, el local del método se podría llamar

121
00:08:14,840 --> 00:08:17,870
igual que el de la clase porque están en diferentes contextos.

122
00:08:17,930 --> 00:08:22,820
Uno de la clase del otro es del método, pero bien son detalles que vamos a ver después.

123
00:08:22,920 --> 00:08:27,410
Y si una variable está compuesta por más de una palabra y esto es lo mismo que la clase E igual que

124
00:08:27,410 --> 00:08:30,470
la clase, cada palabra compuesta se separan con mayúscula.

125
00:08:30,560 --> 00:08:37,700
Por ejemplo, nombre, dato, nombre, dato 2 palabra, pero la de dato comienza inicia con mayúscula,

126
00:08:37,760 --> 00:08:43,370
seguramente palabra compuesta, pero recuerden que nombre de variable inicial con minúscula y después

127
00:08:43,430 --> 00:08:45,010
palabra compuesta con mayúscula.

128
00:08:45,110 --> 00:08:51,110
Una variable puede comenzar con una letra alfabética de la A a la Z, también con un subrayado, un

129
00:08:51,110 --> 00:08:57,020
guion bajo o un símbolo de peso o de dólar, y después de eso pueden ir números o letras.

130
00:08:57,170 --> 00:09:02,290
Estos serían los conceptos y los puntos más importantes que quería destacar sobre las variables en Java.

131
00:09:02,430 --> 00:09:04,220
Bueno, así que continuemos la siguiente clase.

132
00:09:04,250 --> 00:09:06,250
Con ejemplos nos vemos.
