Entonces por lo que entiendo, no es muy común que los atributos de una clase sean protegidos (quiero creer que puede haber alguna excepción) y tal vez lo mas común seria que los métodos fueran protegidos (ademas de públicos y privados claro esta).
Gracias profe, me gusto demasiado la explicacion. Venia con la duda de un libro que explicaba el protected en herencia pero no sabia en que circunstancias se implementaban.
¡Gran video! Pero me generó una duda: si la recomendación es reunir las superclases y subclases en un mismo paquete, ¿cuál es la ganancia de utilizar protected en lugar de la visibilidad de paquete? Capaz entendí algo mal o me perdí de algo je ¡Muchas gracias de antemano!
Suponeé que extendés a la clase Scanner que viene con Java (en el paquete java.util) con la clase MiScanner en tu paquete propio. Ahí ya tenés una subclase fuera del paquete de la superclase, por ende, ahí el protected tendrá diferencias con la visibilidad de paquete
Pregunta: veo que en el diagrama uml donde presentas las clases con los paquetes vehiculos y muestraprotected, estos los ilustras como carpetas entonces, ¿Es lo mismo un paquete que una carpeta? pregunto por que en el ide netbeans al crear un paquete también veo que se pueden crear carpetas así que supongo que seria lo mismo un paquete y una carpeta o son cosas totalmente diferentes. O tal vez la pregunta correcta seria, ¿Cual es la diferencia entre un paquete y una carpeta?
Un paquete es una carpeta lógica que agrupa clases de una determinada funcionalidad (por ejemplo, el paquete java.sql agrupa clases e interfaces referidas a manejar conexiones a bases de datos). Normalmente estos paquetes terminan siendo carpetas físicas en el sistema operativo
Maestro una pregunta, en la clase 'OtraClase' la instrucción 'System.out.println(v.marca);' me la declara como ilegal, puse esa instrucción en un método y recién me la acepto, mi pregunta es pq te acepta esa instrucción sin mostrarte error? . Otra cosa, he creado una clase llamada Avion que hereda de Vehiculo en el primer paquete(muestraprotected), puse un atributo y un método de Vehiculo como protected, al momento de crearme un objeto de tipo avion en la clase principal(main) no pude ver el atributo y el método que declare como protegido psdta: estoy utilizando eclipse.
Hola, 1) No podés colcoar una salida en medio de la clase, tal instrucción debe estar dentro de un método para que funcione. 2) Raro, deberías de poder accederlo. ¿Tus clases están todas en el mismo paquete? P.D: El funcionamiento no depende del IDE que utilices ;)
@@CharlyCimino La clase Vehiculo, Auto y Moto están en el paquete vehiculos y la clase Principal y Avion estan en otro paquete; cuando todas las clases estaban en un mismo paquete las otras clases si podían ver los atributos y métodos tipo protected, cuando cree el paquete vehiculos y meti las clases correspondientes; la clase Avion ya no pueden ver los tipos Protected de su padre; esto me trae confusión pq recuerdo que mencionaste que las clases hijas si podian ver los tipos Protected si estaban en otro paquete.
🙌 ¡APOYÁ AL CANAL! Si te gusta mi contenido, invitame un cafecito 😁
➡ Desde Argentina: cafecito.app/charlycimino
➡ Fuera de Argentina: paypal.me/charlycimino
📌 Dejá tu comentario 📝, dale 'like' 👍, suscribite al canal 👥 y activá la campanita 🔔 ¡GRACIAS!
🤳 ¡Seguime!
🌏WEB PERSONAL: charlycimino.com 🌏
🌎INSTAGRAM: instagram.com/charlycimino 🌏
🌍FACEBOOK: facebook.com/charlyycimino 🌏
🌏LINKEDIN: linkedin.com/in/charlycimino 🌏
🌏GITHUB: github.com/CharlyCimino 🌏
🌏TWITCH: www.twitch.tv/charlycimino 🌏
🌏PATREON: patreon.com/charlycimino 🌏
Gracias por iluminarnos. Gracias por todo.
muy buena explicación, muchas gracias!
buen video para entender la visibilidade protected!! gracias!
Muy buena explicación. Lo he entendido muy bien. Gracias! 💯
Cada video me sorprendo mas de la claridad con que manejas todos los conceptos de Java, la pasion con la que enseñas se transmite , crack !!
Entonces por lo que entiendo, no es muy común que los atributos de una clase sean protegidos (quiero creer que puede haber alguna excepción) y tal vez lo mas común seria que los métodos fueran protegidos (ademas de públicos y privados claro esta).
Así es
cada video me ayuda a entender mejor JAVA, un abrazo Charly!
Gracias profe, me gusto demasiado la explicacion. Venia con la duda de un libro que explicaba el protected en herencia pero no sabia en que circunstancias se implementaban.
Muchas gracias profe. Es excelente como explica. Ojala tengan mas llegada estos videos. Le deseo muchos exitos!!
Que fascinante video !!!
¡Gran video! Pero me generó una duda: si la recomendación es reunir las superclases y subclases en un mismo paquete, ¿cuál es la ganancia de utilizar protected en lugar de la visibilidad de paquete? Capaz entendí algo mal o me perdí de algo je ¡Muchas gracias de antemano!
Suponeé que extendés a la clase Scanner que viene con Java (en el paquete java.util) con la clase MiScanner en tu paquete propio. Ahí ya tenés una subclase fuera del paquete de la superclase, por ende, ahí el protected tendrá diferencias con la visibilidad de paquete
Pregunta: veo que en el diagrama uml donde presentas las clases con los paquetes vehiculos y muestraprotected, estos los ilustras como carpetas entonces, ¿Es lo mismo un paquete que una carpeta? pregunto por que en el ide netbeans al crear un paquete también veo que se pueden crear carpetas así que supongo que seria lo mismo un paquete y una carpeta o son cosas totalmente diferentes. O tal vez la pregunta correcta seria, ¿Cual es la diferencia entre un paquete y una carpeta?
Un paquete es una carpeta lógica que agrupa clases de una determinada funcionalidad (por ejemplo, el paquete java.sql agrupa clases e interfaces referidas a manejar conexiones a bases de datos). Normalmente estos paquetes terminan siendo carpetas físicas en el sistema operativo
Maestro una pregunta, en la clase 'OtraClase' la instrucción 'System.out.println(v.marca);' me la declara como ilegal, puse esa instrucción en un método y recién me la acepto, mi pregunta es pq te acepta esa instrucción sin mostrarte error? .
Otra cosa, he creado una clase llamada Avion que hereda de Vehiculo en el primer paquete(muestraprotected), puse un atributo y un método de Vehiculo como protected, al momento de crearme un objeto de tipo avion en la clase principal(main) no pude ver el atributo y el método que declare como protegido
psdta: estoy utilizando eclipse.
Hola,
1) No podés colcoar una salida en medio de la clase, tal instrucción debe estar dentro de un método para que funcione.
2) Raro, deberías de poder accederlo. ¿Tus clases están todas en el mismo paquete?
P.D: El funcionamiento no depende del IDE que utilices ;)
@@CharlyCimino La clase Vehiculo, Auto y Moto están en el paquete vehiculos y la clase Principal y Avion estan en otro paquete; cuando todas las clases estaban en un mismo paquete las otras clases si podían ver los atributos y métodos tipo protected, cuando cree el paquete vehiculos y meti las clases correspondientes; la clase Avion ya no pueden ver los tipos Protected de su padre; esto me trae confusión pq recuerdo que mencionaste que las clases hijas si podian ver los tipos Protected si estaban en otro paquete.
@@enkhary Deberían poder verse aunque estén en otro paquete. Si podés pasarme tu codigo (subilo a Github) y lo reviso.
Muy buen vídeo¡