toString en Java ☕ Viendo el estado de los objetos 👀

Поділитися
Вставка
  • Опубліковано 29 січ 2025

КОМЕНТАРІ • 42

  • @CharlyCimino
    @CharlyCimino  2 роки тому +1

    🙌 ¡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 🌏

  • @mauriciogonzalez1704
    @mauriciogonzalez1704 2 роки тому +5

    sos un crack!!! de los mejores cursos que vi en internet.

  • @dzs1796
    @dzs1796 7 місяців тому +1

    Es increíblemente fascinante todo el conocimiento que compartes!!

  • @isaijimenezalvardo6377
    @isaijimenezalvardo6377 2 роки тому +2

    Amigo vos explicas de una forma muy clara

  • @leoprone1
    @leoprone1 3 місяці тому

    La mejor explicación, muchas gracias!

  • @carlosrios7823
    @carlosrios7823 7 місяців тому +1

    Excelente video, lo entendí al instante.

  • @matiasgallerani7474
    @matiasgallerani7474 Рік тому

    Maniito QUE BIEEEN QUE SE TE ENTIENDE!!!! te voy a recomendar cada vez q alguien tenga dudas de Java :)

  • @AdrianaLalaDuran
    @AdrianaLalaDuran Рік тому

    Excelente y clarísima tu explicación. ¡Muchas gracias!

  • @AdrianBarajas_aw
    @AdrianBarajas_aw 11 місяців тому

    eres un crack hermano, he entendido todo perfectamente

  • @ivanibanezquirant8375
    @ivanibanezquirant8375 3 роки тому +2

    Otra vez más me has ayudado a aclarar conceptos, un saludo !!

  • @cilohernandezjuanricardo1338
    @cilohernandezjuanricardo1338 2 роки тому +1

    Buen video hermano, fácil, rápido y entendible

  • @srcuyo
    @srcuyo 2 роки тому +1

    gracias loco, que nivel! me ayudaste mucho

  • @paulocabelloacha4195
    @paulocabelloacha4195 3 роки тому +1

    Excelente explicación, muchas gracias y adelante con el canal!

  • @Dizzie555
    @Dizzie555 3 роки тому +1

    Diez puntos. Muchas gracias.

  • @florenciobritez5521
    @florenciobritez5521 3 роки тому +1

    Qué buena explicación.

  • @RodrigoMoralesUnderPressure
    @RodrigoMoralesUnderPressure 2 роки тому

    Sos un genio, muchas gracias

  • @pabloromano6
    @pabloromano6 3 роки тому

    Excelente canal. Todo clarisimo

  • @pabloalvarezs
    @pabloalvarezs 3 роки тому +1

    gracias crack

  • @andresgamarra9067
    @andresgamarra9067 2 роки тому

    Súper explicación, pero tengo una duda: ¿cuando haces una sobrecarga de métodos no se usa el @Override? ¿O en qué casos se usa el @Override? ¡Muchas gracias!

    • @CharlyCimino
      @CharlyCimino  2 роки тому +1

      ¡GRACIAS! El @Override aparece al SOBRESCRIBIR métodos (sobrecarga es otra cosa). Es opcional pero altamente recomendable ponerlo. El porqué lo tenés en este video: ua-cam.com/video/14Bo_fNtLZY/v-deo.html

  • @juanperez-rq2lb
    @juanperez-rq2lb 2 роки тому

    Bendito seas ya entendi! jajaja

  • @mentorbook3265
    @mentorbook3265 3 роки тому +1

    Muy bueno Charly! Solo unas consultas. Por qué lo estarías sobrescribiendo al método? Si es una clase que creaste desde 0? está implícito de antemano? que función cumple?

    • @CharlyCimino
      @CharlyCimino  3 роки тому +5

      Ante todo, hay que entender herencia: toda clase en Java hereda de la clase Object, si o sí. Cómo la implementación del toString de Object retorna un String con la referencia del objeto, se sobreescribe tal método para lograr devolver un String que represente el estado. En el vídeo "toString es polimorfismo" lo explico con más detalle. Saludos

    • @mentorbook3265
      @mentorbook3265 3 роки тому +2

      @@CharlyCimino Ahí entendí, o sea el método heredado lo que hace es devolverte la ubicación en memoria que te arrojaba al principio, vos lo sobrescribiste para que se comporte a tu gusto. Gracias! Lo estás dejando muy bueno al canal!

    • @CharlyCimino
      @CharlyCimino  3 роки тому +4

      @@mentorbook3265 exactamente, ese es el efecto de sobreescribir un método. Cuando aparezcan los videos de polimorfismo verás que es el pilar fundamental de la POO: ¡estoy pudiendo cambiar el comportamiento del println de Java para mis clases sin tocar el println de Java!

  • @victorevangelista8656
    @victorevangelista8656 2 роки тому

    Pregunta: la anotación de @override, ¿Es un comentario o es código para que el método sobrecargado pueda funcionar?

    • @CharlyCimino
      @CharlyCimino  2 роки тому +2

      Te recomiendo ver mí video específico acerca del "@override"

  • @juanperez-rq2lb
    @juanperez-rq2lb 2 роки тому

    Oye si por ejemplo tengo una clase persona que hereda a estudiante y a alumno, en donde ambos se le agregan otros parametros, como le puedo hacer para que al imprimir su ubicación me aparezca toda su información? no solo el de la clase persona

    • @CharlyCimino
      @CharlyCimino  2 роки тому

      Sobrescribiendo el método toString llamando al toString de la superclase y agregando lo de la subclase. Chequea mí video de super y polimorfismo en Java.

    • @juanperez-rq2lb
      @juanperez-rq2lb 2 роки тому

      @@CharlyCimino ya lo hice y si me ayudo pero para abstraer la informacion de la super clase tuve que cambiar los modificadores de acceso de private a protected para poder mostrar la información

    • @CharlyCimino
      @CharlyCimino  2 роки тому +1

      @@juanperez-rq2lb no deberías, los atributos protected quedan expuestos casi como si fueran public (mirá mí video de protected e Java). En el toString de la subclase colocá "super.toString()" para invocar al toString de la superclase y ya.

  • @pedroojesto4989
    @pedroojesto4989 2 роки тому

    Hola Carly, tengo un toString en una superclase (A). Cuando leo desde otra clase (X) y le pido el toString, me devuelve los datos de la superclase (A) y la subclase (B) heredada. ¿Cómo puedo evitarlo? Solo quiero los datos de la superclase (A).

    • @CharlyCimino
      @CharlyCimino  2 роки тому +2

      Revisá el toString de la subclase B: debe estar llamando al toString de la superclase (super.toString()). Quitá ese llamado y ya

    • @CharlyCimino
      @CharlyCimino  2 роки тому +2

      Y si solo querés los datos de la superclase A, entonces no sobrescribas el toString en la subclase B

  • @pabloschlo
    @pabloschlo Рік тому

    Charly, siempre con dudas yo ! Todavía estoy chato. Creo que lo que "antes" era el tipo de dato de una variable, ahora es una clase, no? O mejor dicho, tiene su clase?. Con String es evidente porque se escribe con mayúscula. Ahora, cuando uno se encuentra con algo como int numero = 20; no hay una clase, sería una asignación, pero int tiene clase?. Y por último, ArrayList y Arrays son dos clases distintas? Para poder imprimir un array común, al método toString lo vi en internet con Arrays, se podría haber usado ArrayList?. Espero no haberte mareado y espero también tener una mirada más global pronto :(

    • @CharlyCimino
      @CharlyCimino  Рік тому +1

      1) Todos son tipos de datos. La diferencia es que hay 8 tipos de datos llamados primitivos (int, double, char, boolean, y otros 4) que no son clases, el resto sí lo son (por ejemplo, String).
      2) 'int x = 20' es una asignación tal como lo es 'Scanner x = new Scanner(...)', lo que importa es la coherencia: si tu variable es de tipo int, asignas un int. Si tu variable es de tipo Scanner, asignas una referencia a un Scanner (o null)
      3) ArrayList es la clase que modela a las listas de elementos. Arrays es una clase utilitaria con métodos estáticos (ya verás qué es el 'static') para hacer cosas con los arrays primitivos (los que son con corchetes, no ArrayList)
      4) ArrayList tiene su propio método toString sobrescrito, por eso podes mostrar cualquiera de ellos directamente en la consola, no así con los arrays, que no poseen métodos propios y por eso se apoyan en una clase utilitaria (Arrays)
      5) Java suele tener muchas cosas heredadas de sus antecesores (C/C++), como los arrays con corchetes y los tipos de datos primitivos, por eso no se lo considera 100% orientado a objetos

    • @pabloschlo
      @pabloschlo Рік тому

      @@CharlyCimino Gracias !!!💯

    • @pabloschlo
      @pabloschlo Рік тому

      @@CharlyCimino array común = array primitivo jaja, vos entendes 😆

    • @pabloschlo
      @pabloschlo Рік тому

      ​@@CharlyCimino de tantos videos que vi, no recuerdo donde es que decís que Java hereda o trae los elementos primitivos de otro programa que sería algo así como el "padre", podrías decirme el nombre por escrito? A propósito de todo esto, estuve leyendo sobre los Wrapper, muy interesante!

    • @CharlyCimino
      @CharlyCimino  Рік тому +1

      @@pabloschlo Java es un lenguaje basado en su antecesor C++, que a su vez está basado en el lenguaje C. Este último es el padre de todos prácticamente.