Java 8 Tutorial - 7 Referencias de Métodos (Method References)

แชร์
ฝัง
  • เผยแพร่เมื่อ 18 พ.ย. 2024

ความคิดเห็น • 34

  • @bonifaciovelazquezbarcenas9918
    @bonifaciovelazquezbarcenas9918 3 ปีที่แล้ว +3

    Mis respetos Sr. MitoCode. Lo haces tan ameno que cualquiera aprende.
    En lo personal aun encuentro los lambdas algo complicado por que soy de la old school (ya sabes, programación imperativa), pero lo explicas tan claro que las haces ver atractivas y bastante interesantes. Estoy actualmente atendiendo entrevistas de trabajo y me han preguntado bastante de esto, aunque ya puedo decir que las conozco, no puedo decir que soy experto pero bastante me han servido tus videos.

  • @raulgraciamaiques4986
    @raulgraciamaiques4986 7 ปีที่แล้ว +22

    Las interfaces funcionales también tienen una curiosidad.
    Deben de contener sólo un método abstracto sin implementar. PERO si son métodos de Object no hay problema.
    Por ejemplo:
    @FunctionalInterface
    public interface Operacion {
    double calcular(double n1, double n2);
    boolean equals(Object obj);
    default boolean ejemploTrue() {
    return true;
    };
    }
    Esto también es una interface funcional y fijate que he implementado un método default.
    Quizá hay más excepciones.

    • @MitoCode
      @MitoCode  7 ปีที่แล้ว +2

      +Raúl Gracia Maiques gracias por el aporte Raúl

    • @raulgraciamaiques4986
      @raulgraciamaiques4986 7 ปีที่แล้ว

      A ti por tus tutoriales. :D

  • @juanALF21
    @juanALF21 5 ปีที่แล้ว

    Explicacion muy buena. Realmente se entiende claramente el concepto.

  • @marioalop
    @marioalop 8 ปีที่แล้ว +1

    Muy bien explicado, así es fácil aplicarlo.

  • @skgutierrezcaceres142
    @skgutierrezcaceres142 5 ปีที่แล้ว +1

    Vamos al codigoo !!!! .. buenos tutos

  • @compartelo007
    @compartelo007 4 ปีที่แล้ว

    Espectacular, muchas gracias

  • @cesarcadavid1679
    @cesarcadavid1679 8 ปีที่แล้ว

    +Mito Code Excelente vídeo compañero, estoy comprendiendo a un mas las lambdas y Java 8, Gracias!

    • @MitoCode
      @MitoCode  8 ปีที่แล้ว +1

      +Cesar Andres Cadavid Jaimes te invito a revisar también www.mitocodenetwork.com/premium/

  • @TheHarryCode
    @TheHarryCode 8 ปีที่แล้ว +1

    Java 8 tiene nuevas funcionalidad muy interesantes :D, lastima que en la empresa donde desarrollo trabajemos con jdk1.6 y en ocasiones con 1.7 (Arriesgandonos) :/.
    MitoCode muchas gracias por compartir tu conocimiento, saludos desde Colombia.

    • @MitoCode
      @MitoCode  8 ปีที่แล้ว +2

      +HarryMesa9524 gracias a ti Coder, te invito a revisar también www.mitocodenetwork.com/premium/

  • @paolagalarza2823
    @paolagalarza2823 6 ปีที่แล้ว +1

    hOLA Jaime!... me encanta los tutoriales son cortos con ejemplos sencillos, gracias. Una vez que la U me deje respirar adquirere tu curso de Java.... por favor ACLARAME ALGO, al final del video dices que los métodos a referencia no acepta el paso de parámetros...:-/

    • @MitoCode
      @MitoCode  6 ปีที่แล้ว +1

      Hola Paola, no se puede, para eso sería mejor usar lambdas stackoverflow.com/questions/44869976/parameters-in-method-reference

    • @paolagalarza2823
      @paolagalarza2823 6 ปีที่แล้ว

      MitoCode ....gRACIAS Jaime por la referencia, ya entendí.

  • @aamb_c133
    @aamb_c133 3 หลายเดือนก่อน

    4:04 eso solo aplica para metodos por referencia estaticos?

  • @joshe9626
    @joshe9626 8 ปีที่แล้ว

    Geniallll , espero el proximo videooo :3 , ojala tambien puedas hacer pequeños juegos en Java :)

    • @MitoCode
      @MitoCode  8 ปีที่แล้ว

      +Jose Suarez mañana hay un en vivo, no te puedes perder

  • @bryandurancastaneda4043
    @bryandurancastaneda4043 4 ปีที่แล้ว +1

    Por que en el metodo operar() cuando no colocas la referencia op.saludar(); no te pinta nada en consola ? Si estas haciendo referencia a lo que esta definido en tu metodo referenciarMetodoStatic que pinta un texto en consola.

  • @jeanperezcuba9920
    @jeanperezcuba9920 5 ปีที่แล้ว +1

    8:30, hola esta parte no me queda clara porque sort() pide como parámetro un arreglo y una instancia de Comparator, sin embargo, String no es una instancia de Comparator sino de Comparable, entonces ¿por qué no te manda error el eclipse?. Si puedo entender que al final de cuentas se está usando el compareToIgnoreCase pero en las dos formas anteriores se llama desde una instancia de Comparator. Help me!

    • @edwardmuri5895
      @edwardmuri5895 5 ปีที่แล้ว +3

      no tiene mucho que ver que la clase String implemente la interfaz Comparable, como bien dices lo que se pasa en el segundo parámetro es una instancia de la interfaz Comparator y la implementacion que hagas en esa clase sera lo que se use para determinar el orden del objeto a evaluar(en este caso un String). con lampda puedes pasar directamente un metodo como referencia a una interfaz funcional(como lo es Comparator) y es lo que esta haciendo en ese momento. En otras palabras es como si se creara una instancia de la interfaz Comparator y el metodo Compare fuese sobre-escrito con la logica del metodo CompareToIgnoreCase de la clase String.

    • @PabloRodriguezMontero
      @PabloRodriguezMontero 3 ปีที่แล้ว

      Excelente inquietud, pero como ya mencionó @edward muri, lo que se está implementando es una "referencia a método", es decir, dado que Comparator es una FunctionalInterface, lo que se le pasa es la referencia a método que tiene la implementación de la comparación para el ordenamiento.

    • @jeanperezcuba9920
      @jeanperezcuba9920 3 ปีที่แล้ว +1

      Gracias por sus respuestas, en ese momento estaba muy perdido en cuanto a lambda pero durante la cuarentena me dediqué a profundizar en las novedades de Java 8 y 11, ahora se me hace todo un poco más implícito. Saludos.

    • @CodeBOXDaniKeys
      @CodeBOXDaniKeys 2 ปีที่แล้ว

      Tambien tuve la misma impresion, lo que pasa es que el constructor sobrecargado, cuando explica la manera verbosa mandas el array como primer parametro y como segundo parametro una instancia de la interfaz comparator y ese String es el tipo de dato del Array con el que va a realziar el orden , ya cuando hace la forma usando el operador de referencia :: se refiere a la clase predefinida String de la APi java que es la que implementa la interfaz Comparator :: y el metodo compareToIgnoreCase

  • @robertoalonsopeponsanchez2428
    @robertoalonsopeponsanchez2428 4 ปีที่แล้ว

    Es de buena practica usar muchas clases anónimas ? Me dijo un profesor una vez que procurara no usar clases anónimas, por que para debugear no ayuda mucho que digamos. Si alguien me pudiera resolver esta duda.

    • @MitoCode
      @MitoCode  4 ปีที่แล้ว +1

      Todo en exceso es malo, si creamos un sistema con varias clases solo por subdividir en exceso el sistema también sería mala práctica... 😁

  • @2hanfer
    @2hanfer 3 ปีที่แล้ว

    y si quiero la respuesta sea descendente con esa forma da acortar, se podria?

    • @CodeBOXDaniKeys
      @CodeBOXDaniKeys 2 ปีที่แล้ว

      hay otro metodo para colecciones no se para arrays, Colllections.sort(nombreColeccion.reverse); y de la clase que creaste tus instancias debes imlementar la interfaz comparable aunque mito por hay le vi un constructor sobrecargado que puedes implementar la interfaz comparable

  • @cleodirbarros2363
    @cleodirbarros2363 6 ปีที่แล้ว

    thanks

  • @aled3859
    @aled3859 4 ปีที่แล้ว

    me da un error la referencia al constructor

    • @aled3859
      @aled3859 4 ปีที่แล้ว +1

      era algo de instalacion

  • @CodeBOXDaniKeys
    @CodeBOXDaniKeys 2 ปีที่แล้ว

    Es raro ver como se hace la implementacion de los metodos de la interfaz funional uno simpre espera la implementacion dentro de los corchetes del metodo jejej

  • @gatomontesroseIII
    @gatomontesroseIII ปีที่แล้ว +2

    no entendi un crj