00:00:02
hola amigos de youtube estamos de
00:00:04
vueltas con el nuevo vídeo de
00:00:05
programación orientada a objetos esta
00:00:07
maravillosa sección donde hablamos de su
00:00:10
lógica pero antes de comenzar quiero
00:00:12
decirles que este tema que veremos hoy
00:00:14
tendrán conceptos que hemos visto en los
00:00:16
vídeos anteriores me alegré que estemos
00:00:18
avanzando juntos y tengo que decir esto
00:00:20
pero te recomiendo ver los tres vídeos
00:00:22
anteriores para entender mucho mejor
00:00:23
este de hoy pero claro no te dejaré
00:00:25
buscando solo te ayudaré diciendo que
00:00:27
vimos en cada vídeo y así sepas por
00:00:29
dónde empezar en el primer vídeo vimos
00:00:31
la lógica de las clases atributos
00:00:33
métodos y objetos en el vídeo de
00:00:35
herencia entendimos cómo funcionan las
00:00:37
clases padre y cómo las clases hija
00:00:39
heredan dichos atributos y métodos en el
00:00:42
polimorfismo explicamos cómo se puede
00:00:44
crear objetos de distintas formas
00:00:46
utilizando los mismos métodos y
00:00:48
atributos de la clase padre
00:00:50
ojo aquí tenemos que tener solo una cosa
00:00:52
en el vídeo de polimorfismo al final
00:00:54
utilizamos esta sintaxis para crear el
00:00:56
diamante y el carbón es un pequeño error
00:00:59
que se soluciona cambiando esta parte ya
00:01:01
que así completamos el polimorfismo y
00:01:03
usamos el objeto como hilo instancia
00:01:05
vamos con el tema antes y así ocupamos
00:01:07
el código del cubo pero también el
00:01:09
código de su clase hija una simple
00:01:11
corrección que faltó mencionar en este
00:01:13
vídeo pero bueno como sé que no vas a
00:01:15
volver a ver los vídeos anteriores
00:01:17
porque te conocemos en este vídeo le
00:01:19
explicaremos de todas formas después de
00:01:22
toda esta introducción comenzamos con la
00:01:24
lógica del encapsulamiento
00:01:26
encapsulamiento que es esta buena
00:01:28
farmacia como siempre en programación
00:01:30
crees que ya has comprendido todo cuando
00:01:33
ya logras de entender la herencia y el
00:01:35
polimorfismo pero no llega a tu profesor
00:01:37
y no otro mismo alumno ese día de hoy
00:01:41
veremos otro tema que solo les enseñaré
00:01:43
en una clase improvisada y lo más
00:01:45
probable es que no les vuelva a explicar
00:01:47
y esto haga que no lo entiendan
00:01:48
reprueben ese examen y tengan que
00:01:50
recurrir a vídeos en youtube para poder
00:01:51
pasar una materia y así tener un título
00:01:53
universitario que tanto quieren así es
00:01:56
estás adentrando temas a la programación
00:01:58
y te das cuenta que tú simple sintaxis
00:02:00
de concatenar números ya ni se parece y
00:02:02
lo que estás haciendo con pop pero
00:02:05
tranquila pequeña persona aquí estoy yo
00:02:07
para explicarte de la mejor manera
00:02:09
creamos un personaje de minecraft otra
00:02:12
es minecraft crearemos un personaje ya
00:02:15
que siento que es el mejor ejemplo para
00:02:17
poder hacer esto mucho más comprensible
00:02:20
que creamos su clase padre en llamada
00:02:22
personaje un personaje tiene como
00:02:24
atributo su nombre su edad y su textura
00:02:26
y crearemos un método sencillo como
00:02:29
saludar hasta aquí no tenemos nada nuevo
00:02:31
todo esto lo hemos hecho ya pues mi
00:02:33
querido amigo aquí comienza el
00:02:34
encapsulamiento lo que haremos es poner
00:02:37
sus atributos en vevey y vidas que rayos
00:02:40
para qué sirve esto pues bien a esto se
00:02:42
le llama modificadores de acceso si
00:02:45
tienen public todas las clases fueran
00:02:47
incluso fuera del paquete tienen acceso
00:02:49
a estos atributos si son pretexto en las
00:02:51
clases del paquete pueden tener acceso
00:02:53
pero si la ponemos privado únicamente la
00:02:56
clase principal tiene acceso espero se
00:02:58
haya entendido si no es así así no saben
00:03:00
en los comentarios y podemos hacer un
00:03:02
vídeo al respecto esto nos ayuda a
00:03:04
proteger nuestros atributos de alguna
00:03:06
clase externa y que no cualquiera pueda
00:03:08
modificarlo o evitar errores para que
00:03:10
entiendan a lo que me refiero con
00:03:12
atributos protegidas hagamos un objeto
00:03:14
con la clase personaje que acabamos de
00:03:15
hacer pongamos del personaje 1
00:03:18
vamos poner un nombre y como vemos nos
00:03:20
marca error ya que protegemos dicho
00:03:22
atributo y bien dirás pero absolute
00:03:24
entonces como crearemos objetos y no
00:03:25
podemos tener acceso pues bien aquí bien
00:03:27
de lo nuevo le presentó a los servers y
00:03:29
querer los shaders sirven para
00:03:31
introducir y los gamers para obtener
00:03:33
esto siempre tengo en mente es sencillo
00:03:35
lo que hace es crear un set y un que
00:03:37
para cada tributo hagamos el set de
00:03:39
nombre que básicamente es hacer otro
00:03:41
método to be para que podamos ocuparlo
00:03:43
en otra clase y se nombre para que sean
00:03:46
fácil identificarlo y dentro de los
00:03:48
paréntesis pondremos la variable nombre
00:03:50
este de aquí dentro es lo que te pedirán
00:03:51
cuando llames este método o sea un
00:03:54
nombre dentro del método te pondrá fish
00:03:56
punto nombre y le añadiremos el nombre
00:03:58
si que éste se ve algo confuso pero
00:04:00
tranquilo prácticamente estás creando un
00:04:03
método nuevo para que puedas añadir un
00:04:05
nombre a un objeto futuro y estarías
00:04:07
haciendo lo mismo que no te dejaba hacer
00:04:08
en clase main ya que estaba protegida
00:04:11
estás haciendo lo mismo pero dentro de
00:04:12
la misma clase padre ok por eso le
00:04:15
asignas nombre porque cuando lo llames
00:04:17
te pedirán un hombre y ese nombre es el
00:04:19
que estará aquí ahora creamos el get
00:04:21
este método nos sirve para mostrar el
00:04:23
atributo en nota
00:04:24
clase es casi lo mismo public para poder
00:04:27
tener acceso en otras clases el tipo de
00:04:29
variable y de nombre para identificarlo
00:04:31
fácil en este caso como se trata de
00:04:33
mostrar datos no tenemos por qué hacer
00:04:35
que pida una variable así que no
00:04:37
colocamos nada dentro del paréntesis y
00:04:39
dentro del método colocaremos víctor
00:04:41
nombre esto significa que al llamar a
00:04:43
ese método nos retornará el nombre en
00:04:45
palabras más simples cuando llamemos a
00:04:48
este método nos mostrará el nombre muy
00:04:50
bien ya tenemos los set y kate de tu
00:04:52
variable nombre tendrás que hacer lo
00:04:53
mismo con todas las demás variables si
00:04:56
quieres que se puedan modificar y
00:04:57
mostrar en este caso utilizaremos
00:04:59
nuestro ibex el favorito net bien que
00:05:02
podemos hacer que nos haga
00:05:04
automáticamente los heridos get de las
00:05:06
variables lo sé lo sé te pude decir esto
00:05:08
desde el principio pero también quería
00:05:10
que lo entendieras una vez hecho esto ya
00:05:12
podemos hacer una clase hija o sea un
00:05:14
personaje hagamos de un hechicero
00:05:15
hechicero hereda de personaje esto lo
00:05:18
vimos
00:05:19
al extender al personaje este tercero
00:05:22
tendrá los atributos del personaje más
00:05:24
aparte los suyos como por ejemplo over
00:05:26
colocamos un método de saludo y hacemos
00:05:29
set y get ya saben cómo hacerlo así que
00:05:31
lo haremos con ayuda automática de
00:05:33
nuestro entorno de desarrollo excelente
00:05:35
ya tenemos nuestra plantilla clase padre
00:05:37
con sus atributos su método saludar y
00:05:39
sus respectivos seres y quererse lo
00:05:42
mismo con esta clase hija y llegamos a
00:05:44
la parte final por fin poder crear
00:05:46
nuestro objeto hechicero en nuestro main
00:05:48
aplicaremos polimorfismo como les
00:05:50
explicamos al principio y en el vídeo
00:05:52
anterior así el personaje podrá tener su
00:05:54
propio saludo llega el momento de añadir
00:05:56
su nombre y su edad pondremos el nombre
00:05:59
de nuestro objeto y mandaremos a nuestro
00:06:01
set nombre y automáticamente aquí dentro
00:06:03
nos pedirá colocar un nombre hagámoslo
00:06:05
con las demás variables sencillo no
00:06:07
ahora para mostrar estos atributos
00:06:09
utilizaremos los gamers que hicimos como
00:06:11
te recuerdo los querer sirven para
00:06:13
obtener su información coloquemos una
00:06:15
impresión escribimos el nombre del
00:06:16
objeto y mandamos a llamar el método get
00:06:18
hacemos lo mismo con los demás atributos
00:06:20
y listo acá vamos a añadir atributos y
00:06:23
mostrar
00:06:23
y se nos olvida el saludo e imprimimos y
00:06:26
como vemos ya tenemos nuestro hechicero
00:06:29
completamente cargado con sus atributos
00:06:31
y esos saludo personalizado y todo
00:06:33
gracias al conjunto de la herencia
00:06:35
polimorfismo y encapsulamiento como ven
00:06:37
los temas se ponen un poco más extensos
00:06:40
pero no deberíamos tener problemas ya
00:06:42
que cada tema lo vemos en vídeos
00:06:44
independientes espero que hayas
00:06:45
aprendido lo que es encapsulamiento y
00:06:47
para qué sirven los e iker comenta si
00:06:49
algo no te quedó claro y ha hermoso un
00:06:51
vídeo en dos minutos de algo en
00:06:52
específico de este vídeo espero y estés
00:06:55
comprendiendo todos estos temas y al que
00:06:57
he querido un suscriptor sé que lo vas a
00:06:59
lograr
00:07:00
[Música]
00:07:10
ah
00:07:11
[Música]
00:07:19
ah
00:07:21
para más
00:07:23
[Música]