1
00:00:00,300 --> 00:00:00,960
Continuamos.

2
00:00:01,050 --> 00:00:05,700
Ahora vamos a instancia de la clase automóvil con algunos datos de ejemplo, nos vamos entonces a la

3
00:00:05,700 --> 00:00:06,840
clase con el método Moine.

4
00:00:06,990 --> 00:00:08,040
Nuestra clase principal.

5
00:00:08,160 --> 00:00:15,300
Bueno, recuerde que siempre asociado al tipo auto de la clase, en este caso automóvil, por ejemplo,

6
00:00:15,300 --> 00:00:17,100
auto da lo mismo nombre variable.

7
00:00:17,190 --> 00:00:21,380
Igual creamos con el niño siempre un objeto de conexión.

8
00:00:21,570 --> 00:00:27,900
Recuerde que lo que hace el niño es crear la instancia, inicializar el objeto y se guarda en la memoria

9
00:00:28,050 --> 00:00:32,970
en algún puntero una dirección y en la variable se guarda la referencia, no el objeto.

10
00:00:33,060 --> 00:00:37,170
El objeto está guardando la memoria en la variable, la referencia hacia ese objeto.

11
00:00:37,470 --> 00:00:43,530
El constructor que lleva el nombre de la clase automóvil y parentesis, a diferencia de los arreglos.

12
00:00:43,640 --> 00:00:49,230
Recuerden cuando este arreglo corchete y la cantil elemento cuando es un objeto común y corriente con

13
00:00:49,230 --> 00:00:53,190
los paréntesis automóvil, ahí lo tenemos.

14
00:00:54,060 --> 00:00:58,080
Ahora, qué pasa si quiero imprimir sus datos porque todavía no tenemos nada ni señalizado?

15
00:00:58,170 --> 00:01:00,280
Están los atributos tan definió en la clase.

16
00:01:00,420 --> 00:01:03,510
Pero el objeto todavía no tiene ningún estado.

17
00:01:03,660 --> 00:01:10,260
Recuerden que cuando hablo sobre el estado de un objeto me refiero a los valores que tienen las variables

18
00:01:10,350 --> 00:01:11,100
o atributo.

19
00:01:11,280 --> 00:01:13,320
En cierto momento esto pueden cambiar.

20
00:01:13,620 --> 00:01:23,080
Entonces veamos el estado sot vi auto un objeto, por lo tanto el punto y el atributo fabricante perfecto.

21
00:01:23,190 --> 00:01:24,410
Ahora otro detalle.

22
00:01:24,600 --> 00:01:30,900
Uno de los principios importantes, la programación orientada objeto, es la ocultación o visibilidad

23
00:01:30,900 --> 00:01:31,680
de los atributos.

24
00:01:31,770 --> 00:01:34,590
Acá estamos accediendo a los atributos de forma directa.

25
00:01:34,830 --> 00:01:41,180
Por lo tanto, no son difosfato, pero dentro del packages en el cual estamos, que es el packages principal.

26
00:01:41,280 --> 00:01:41,870
Bueno, después vamos.

27
00:01:41,880 --> 00:01:47,310
Hay más detalles sobre los packages, pero en este caso en particular estos atributos son públicos.

28
00:01:47,460 --> 00:01:51,630
Se pueden acceder de forma directa, se pueden acceder y modificar, pero rompe el principio.

29
00:01:51,750 --> 00:01:53,420
Ahora, por qué lo estoy haciendo esta forma?

30
00:01:53,460 --> 00:01:58,680
Porque estamos partiendo con el tema de programación orienta objeto y quiere que vayamos paso a paso

31
00:01:58,800 --> 00:01:59,920
entendiendo el concepto.

32
00:02:00,030 --> 00:02:04,970
Por ahora vamos a acceder a modificar los atributos del tipo públicos.

33
00:02:05,250 --> 00:02:06,030
Y ahora?

34
00:02:06,030 --> 00:02:12,990
Después, lo importante es poder proteger estos atributos de la modificación y de la lectura mediante

35
00:02:12,990 --> 00:02:13,620
métodos.

36
00:02:13,740 --> 00:02:20,430
Dar la opción una alternativa para leer, obtener el valor del atributo con métodos yet y con métodos

37
00:02:20,430 --> 00:02:20,820
SET.

38
00:02:20,910 --> 00:02:21,540
Modificar.

39
00:02:22,560 --> 00:02:29,610
En español sería obtener o leer set de asignar o modificar el atributo, pero eso después lo vamos a

40
00:02:29,610 --> 00:02:31,080
ver, vamos a ir paso a paso.

41
00:02:31,200 --> 00:02:33,270
Igualmente se puede ser constructor.

42
00:02:33,300 --> 00:02:39,030
También puedo pasar valores mediante constructor, valores de los atributos que queremos asignar cuando

43
00:02:39,030 --> 00:02:40,730
creamos el objeto, cuando lo inicializar.

44
00:02:40,890 --> 00:02:43,830
Pero también después vamos a ver mucho más detalles sobre constructores.

45
00:02:43,890 --> 00:02:50,310
Por ahora aprendamos lo básico de las clases y objetos, así que bueno, vamos a acceder de forma pública,

46
00:02:50,430 --> 00:02:56,640
vamos a mostrar el fabricante, vamos a mostrar también el modelo.

47
00:03:00,790 --> 00:03:03,200
Y también el color, color y cilindrada.

48
00:03:08,970 --> 00:03:09,620
Vamos a imprimir.

49
00:03:09,790 --> 00:03:12,170
Recuerden, los faroles todavía no están inicializar.

50
00:03:12,430 --> 00:03:16,770
Por lo tanto, debiera mostrar valores por defecto según el tipo de dato.

51
00:03:20,480 --> 00:03:23,990
Alto fabricante por defecto cuando es del tipo string.

52
00:03:24,290 --> 00:03:31,040
El efecto es nulo tanto para el modelo y color, la cilindrada como el tipo doble es cero cero coma

53
00:03:31,040 --> 00:03:32,100
cero punto cero.

54
00:03:32,820 --> 00:03:38,240
Bien pudo haber valores en nuestra aplicación, en nuestro programa, en este caso dentro del Moine,

55
00:03:38,570 --> 00:03:43,500
asignando el dato, pero también podría dar valor dentro de la clase un valor por defecto que después

56
00:03:43,520 --> 00:03:44,390
se puede modificar.

57
00:03:44,560 --> 00:03:45,440
Esto también se puede hacer.

58
00:03:45,560 --> 00:03:50,360
Por ejemplo, voy a colocar el color un color por defecto HACA del tipo string color.

59
00:03:50,420 --> 00:03:56,180
Igual esto es igual a como se define una variable en cualquier parte en un método.

60
00:03:56,180 --> 00:04:01,700
Por ejemplo, en el método Moine es igual el tipo nombre y le podemos dar un valórica del tipo es Trenc

61
00:04:02,420 --> 00:04:04,160
gris de color gris por defecto.

62
00:04:04,270 --> 00:04:09,050
Entonces cualquier auto que se crea, cualquier objeto auto por defecto de color gris después se puede

63
00:04:09,050 --> 00:04:09,470
cambiar.

64
00:04:10,490 --> 00:04:12,260
Vamos a ver, levantamos.

65
00:04:15,420 --> 00:04:17,310
Color gris, así que está perfecto.

66
00:04:17,580 --> 00:04:26,970
Ahora vamos a Sinart datos de forma personalizada para el objeto auto Rosato fabricante igual, por

67
00:04:26,970 --> 00:04:27,900
ejemplo Subaru,

68
00:04:31,170 --> 00:04:31,920
el modelo

69
00:04:35,370 --> 00:04:37,560
impresa y faltaría la cilindrada

70
00:04:41,400 --> 00:04:42,240
2.0.

71
00:04:43,800 --> 00:04:44,490
Vamos a probar.

72
00:04:46,320 --> 00:04:49,860
Subaru Impreza Degregori por defecto 2.0.

73
00:04:50,010 --> 00:04:53,000
Ahora sí me creo el color por defecto quiero un color blanco.

74
00:04:58,120 --> 00:05:03,310
Simplemente lo modifico, modifico valor por defecto que tiene en la plantilla aca en automóvil.

75
00:05:05,310 --> 00:05:12,120
Levantamos, ahora aparece Blanco, ya tenemos listo nuestro automóvil Subaru, pero como tenemos a

76
00:05:12,120 --> 00:05:14,120
Subaru, también podríamos tener M.

77
00:05:14,120 --> 00:05:15,510
Kanté objeto o lo que queramos.

78
00:05:15,930 --> 00:05:18,330
Por ejemplo, voy a tener otro más,

79
00:05:21,930 --> 00:05:22,500
un Mazda.

80
00:05:40,450 --> 00:05:41,200
El modelo,

81
00:05:44,420 --> 00:05:49,030
la cilindrada 3.0 y el color

82
00:05:53,020 --> 00:05:56,550
un color rojo y vamos a imprimir manda entonces por acá.

83
00:06:14,930 --> 00:06:15,770
Levantamos.

84
00:06:16,750 --> 00:06:25,540
Y así como tenemos el objeto Subaru Impreza color blanco 2.0, tenemos Mazda BT 50 Rojo 3.0, dos objetos

85
00:06:25,630 --> 00:06:31,400
en nuestra aplicación distinto, cada uno con su dato, con su información, por el momento hasta simple.

86
00:06:31,430 --> 00:06:37,040
Todavía no tenemos métodos, pero podría tener distintas funciones o funcionalidades que serían nuestros

87
00:06:37,040 --> 00:06:42,770
métodos para realizar algún tipo de tarea, algún proceso con los datos siempre intelectual.

88
00:06:42,770 --> 00:06:49,550
Los métodos con la información del objeto vienen integrados dentro del mismo objeto, tanto las características,

89
00:06:49,700 --> 00:06:53,960
las variables, atributos como comportamiento y de esa forma forma una entidad.

90
00:06:54,050 --> 00:07:00,200
Recuerden que la entidad es la combinación de característica comportamiento, que son las base de cualquier

91
00:07:00,200 --> 00:07:02,690
objeto en la vida real y también en la aplicación.

92
00:07:02,750 --> 00:07:08,950
Incluso los objetos que nos rodean están basados en características y comportamiento y justamente en

93
00:07:08,950 --> 00:07:14,330
la esencia y lo que trata de modelar la programación orientada objetos, acercarse más a la realidad.

94
00:07:14,420 --> 00:07:19,190
Y por eso también son importantes los principios de la programación orienta objeto, porque también

95
00:07:19,310 --> 00:07:21,950
están pasados a los principios de la vida real.

96
00:07:22,070 --> 00:07:26,720
Una de las cosas que no podemos olvidar cuando estamos programando es que todo nuestro código, cualquier

97
00:07:26,720 --> 00:07:31,940
clase o cualquier objeto que estemos desarrollando e implementando, tiene que ser coherente con la

98
00:07:31,940 --> 00:07:32,380
realidad.

99
00:07:32,540 --> 00:07:36,880
Tiene que ver consistencia, tiene que estar de acuerdo con los objetos de la vida real.

100
00:07:37,280 --> 00:07:40,290
Estaba recién empezando, pero de poco nos tenemos en la herencia.

101
00:07:40,430 --> 00:07:43,430
Implementación de interfaces lo vamos a ver más en detalle.

102
00:07:43,520 --> 00:07:45,590
Por ahora quedamos hasta acá, nos vemos.
