Curso Java. Programación genérica. Métodos genéricos. Vídeo 166

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

КОМЕНТАРІ • 91

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

    ✅✅ ✅ ✅ ✅ Todos mis cursos gratuitos 👉 www.pildorasinformaticas.es ✅✅ ✅ ✅ ✅
    🚀 ¿Quieres ejercicios? ¿Quieres más temario? 👉 www.pildorasinformaticas.es/course/java-tutorizado/🚀
    🚀 ¿Quieres que te resuelva las dudas de Java? 👉 www.pildorasinformaticas.es/course/java-tutorizado/ 🚀
    💥💥💥 Siempre seguiré subiendo cursos gratuitos por aquí. Gracias a todos por seguirme. 💥💥💥

  • @bluehelion
    @bluehelion 2 роки тому +6

    Es increíble toda la información que aportas en tus vídeos ya no sólo el como enseñar conceptos nuevos de una manera tan sencilla (que no es fácil y se valora muchísimo) sino además la documentación que añades en tus explicaciones de una forma tan limpia y clara. Eternamente agradecida como estudiante de programación por este grandioso aporte que nos ha dado.
    Muchisímas gracias Juan.

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

      Ese hombre en cada capitulo sorprende, y más cuando uno ve que lleva mas de 7 años el vídeo pero sigue siendo util, sencillo y funcional.

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

    Siempre recurro a pildorasinformaticas en algún momento del año, hoy nuevamente aprendiendo con usted, un lujo.

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

    Es impresionante la claridad y detalle para explicar un tema tan abstracto como lo es los metodos genericos, gracias profesor Juan!

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

    La cantidad de información que brinda y nos regala es muy valiosa.
    Aquí ando, aprendiendo un poco para ir subiendo el nivel.
    Gracias.

  • @redactoresseo2805
    @redactoresseo2805 4 роки тому +2

    M está gustando mucho la programación genérica, te evita muchos quebraderos de cabeza. Gracias por los vídeos

  • @katthacar
    @katthacar 8 років тому +15

    Excelentes videos, mis felicitaciones...
    Sugerencia: Para los que no saben y quieren practicar un poco más, se pueden comparar instancias de objetos creados por nosotros, haciendo que implementen la interfaz Comparable y sobreescribir su método compareTo(), por ej:
    Yo tengo una superclase abstracta Persona de la cual pueden heredar varias más (Empleado, etc), luego, en la clase Persona implemento la interfaz Comparable y en esta misma sobreescribo el método compareTo para que todas las clases hijas de Persona sean comparables:
    @Override
    public int compareTo(Persona p) {
    if (this.edad > p.edad) {
    return 1;
    } else if (this.edad < p.edad) {
    return -1;
    }
    return 0;
    }
    En este caso el método compareTo lo sobreescribo en la clase abstracta Persona, de no hacerlo allí tendría que hacerlo en cada clase que herede de esta, ya eso queda según la necesidad del programador.

    • @pildorasinformaticas
      @pildorasinformaticas  8 років тому +2

      Correcto !! hablo de CompreTo y la interfaz Comparable en el curso. No recuerdo ya el vídeo.... Un saludo!!

  • @-ejs-
    @-ejs- 6 років тому +2

    Un millón de gracias por este canal!, me ha ayudado un montón para aprender a programar en java :).

    • @pildorasinformaticas
      @pildorasinformaticas  6 років тому

      Gracias por el comentario. Me alegro de que te resulte de ayuda. Un saludo!

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

    Muchas gracias salvaste un sprint en mi trabajo jajaja 🤣 💙

  • @Daniel-gs4qu
    @Daniel-gs4qu 5 років тому

    Felicidades. Tus videos son muy profesionales. Ha pasado mucho tiempo desde ahora que estoy estudiando, pero estos conceptos siguen persistentes. Gracias por tu contribución.

  • @albertuco95
    @albertuco95 6 років тому +2

    Creo que me va bien gracias a que al final de cada vídeo dices que me vaya bien. Gracias!

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

    Me sirvio mucho este video y me parece como sugerencia constructiva, que al buscar el menor elemento lo bucaras con un do while empezando a recorrer el array desde el elemento central hacia los extremos, comparando de a dos elementos al mismo tiempo y enseñar la buena práctica de utilizar la menor cantidad de ciclos. Y ademas añade el caso de contemplar si el array es par o impar

  • @efrainaoc
    @efrainaoc 5 років тому +2

    Me enamoré del concepto de programación genérica.
    ¡Muchas gracias por todo profesor!, ya llevo un mes y ya ando por estos rubros tan interesantes.

  • @daddydanidim
    @daddydanidim 6 років тому

    Acabo de conocer este canal, y esta genial, los videos concisos y precisos... GRACIAS MIL por este aporte.!!!!

  • @jesuspastran5165
    @jesuspastran5165 9 років тому +1

    Muy bueno de verdad voy en el video 50 tengo conocimientos previos de java pero de igual forma me ha ayudado mucho a comprender desde otro punto de vista otras cosas de una mejor manera para poder usarlos. Me animo a realizar curso de manera presencial sumado a lo que veo en la universidad mas estos videos es mucho lo que se logra de verdad gracias y saludos desde Venezuela.

    • @pildorasinformaticas
      @pildorasinformaticas  9 років тому

      Jesus Pastran MUchas gracias por el comentario. Me alegro de que te resulten de utilidad los vídeos. Un saludo

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

    Excelente Juan

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

    Uff venia re feliz con las clases genéricas diciendo "como no aprendí esto antes" y pensando que las iba a usar un montón y ahora llegué a esto y se me hizo un quilombo la cabeza😂😂

  • @javiermaruiz
    @javiermaruiz 4 роки тому +1

    Al final acabas amando esto.

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

    Por que extends en vez de implements? disculpen lo breve =)

  • @theleyenda0078
    @theleyenda0078 5 місяців тому

    Min 22:20 Si es una interfaz, no se debería usar implements?

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

    de lo mejor gracias profe

  • @teldatamcy5656
    @teldatamcy5656 10 місяців тому

    Excelente!!!, Gracias. Chévere cambur 🍌!!!!

  • @yahiradrian5110
    @yahiradrian5110 6 років тому +2

    😱 me encanta este tema de la programación genérica , muy bien explicado con lo de la magia xd

  • @mauriciopriego1700
    @mauriciopriego1700 4 роки тому

    Gracias.

  • @frankogb17
    @frankogb17 8 років тому +8

    hola profe Juan, ojala no se le olvide tratar el tema de ajax en java y tambien en el curso de php, GRACIAS...

  • @JohnDoe-rj9oy
    @JohnDoe-rj9oy 5 років тому +3

    21:18 Por qué extends y no implements?

    • @pildorasinformaticas
      @pildorasinformaticas  5 років тому +6

      Porque se trata de un método y no una clase. La sintaxis de Java exige que así sea cuando un genérico hereda dentro de un método. Un saludo!

    • @cristianjelovcic
      @cristianjelovcic 4 роки тому

      Cuando, una interface hereda de otra interface, tambien se utiliza la palabra extends, en lugar de la palabra implements

  • @Hector21211
    @Hector21211 4 роки тому +1

    porque no se le puede poner implements en el generico del metodo ejemplo:
    ?

  • @AngelPC
    @AngelPC 8 років тому +4

    Hola Profe, quisiera saber si ha hecho algun video sobre Nodos, listas enlazadas, pilas y colas y donde estaría. Muchisimas gracias por sus tutos un saludo desde Colombia.

    • @pildorasinformaticas
      @pildorasinformaticas  8 років тому +5

      Hola !! Desde el vídeo 179 al vídeo 189 hablo de listas, colas, listas enlazadas etc. Un saludo

    • @AngelPC
      @AngelPC 8 років тому

      Ok muchas gracias

  • @hebersolisbravo4502
    @hebersolisbravo4502 9 років тому +1

    Buena explicacion, lo entendi bien, gracias

    • @wz_alex9798
      @wz_alex9798 7 років тому

      porque dentro de una clase y
      dentro de un metodo generico de la misma no puedo usar un atributo de la clase
      RESPONDER
      ?

  • @danieldiaz3343
    @danieldiaz3343 6 років тому

    para utilizar el método compareTo pusiste lo de pero funcionaría igual si pusieses el extends Comparable arriba en donde pones public class MisMatrices?
    es decir, poniendo "class MisMatrices extends Comparable {"???

  • @JV-ds6tk
    @JV-ds6tk 2 роки тому

    Me ha volado la cabeza lo de extens Comparable en el método. 🤣

  • @josedronesytecnologia
    @josedronesytecnologia 9 років тому +1

    Muy bien explicado.

  • @bubbango
    @bubbango 7 років тому +1

    Muy pero que muuy buenos vídeos de programación haces. Quisiera preguntar si en un futuro enseñarás la programación funcional en java o en algún otro lenguaje. Muchas gracias.

    • @pildorasinformaticas
      @pildorasinformaticas  7 років тому

      Gracias por el comentario. Es mi intención hacerlo en un futuro, pero no se cuándo (espero que pronto). Un saludo!!

  • @bq3511
    @bq3511 8 років тому +1

    Me he quedado con duda al final sobre como obtener en fechas la menor en un lenguaje entendible, mi suposicion fue que habria que convertir el GregorianCalendar en un Date con el metodo getTime() pero no me da la fecha menor si no mas bien el segundo elemento del arreglo lo he puesto asi:
    Calendar fechas[]={new GregorianCalendar(2015,07,12),
    new GregorianCalendar(2019,10,21),
    new GregorianCalendar(2013,04,12),
    };
    System.out.println(MisMatrices.getMenor(fechas).getTime());
    Esto me da en la consola: Thu Nov 21 00:00:00 CST 2019
    el metodo para comparar que hicimos fue:
    public static T getMenor(T[ ] a){
    if(a==null || a.length==0) return null;
    T elementoMenor=a[0];
    for(int i=1; i0){
    elementoMenor=a[1];
    }
    }
    return elementoMenor;
    }
    Porque me da el segundo elemento?

    • @alfredolodos357
      @alfredolodos357 7 років тому +2

      Hola Brenda,
      te sale el segundo elemento porque en:
      if(elementoMenor.compareTo(a[i])>0){
      elementoMenor=a[1];
      }
      Estas asignando el segundo elemento del array con elementoMenor = a[1]. Esa instrucción la debes cambiar por elementoMenor = a[i]
      Un saludo.

  • @marcelelias2965
    @marcelelias2965 9 років тому +3

    Buenas noches profesor. No entendi bien el porque se coloca en lugar de . na vez mas gracias por su ayuda. saludos!!!

    • @pildorasinformaticas
      @pildorasinformaticas  9 років тому +3

      Marcel Elias Hola !! No te preocupes. En el próximo vídeo aclararé el por qué de esta instrucción. Un saludo

  • @francogarcia2668
    @francogarcia2668 4 роки тому +1

    El error que le veo al segundo metodo generico, que devuelve el menor, es que si es un array de 1 elmento te tira nullPointerException, porque el metodo recorre siempre, sin chequear, desde el elemento 1 (2do elemento de un array) y ahi se rompe todo

  • @ssmatiuri
    @ssmatiuri 9 років тому +1

    Qué significa la advertencia que sale la definición del método getMenor en la parte y en la línea del compareTo?

    • @pildorasinformaticas
      @pildorasinformaticas  9 років тому

      Matías Que hemos usado una clase genérica sin especificar el tipo y esto no es seguro. Y esto ocurrió con la interfaz Comparable T. Si miras la API de Java verás que la definición de la intefaz Comparable es Comparable .
      Hablaremos de ello en el próximo vídeo. Un saludo

  • @Nizark-dj9uf
    @Nizark-dj9uf 6 років тому

    el parametro de compare To me da un error ya que dice que no se puede comparar ya que es un entero.

  • @McSeeMo_
    @McSeeMo_ 6 років тому

    Juan en este video utilizas objetos array simples (no array list) e instancias varios objetos de tipo empleados dentro del mismo, pero jamas le indicas dimension al array, es decir, no le dices cuantas posiciones tiene. Pense que esa era una cualidad unica de los arraylist, como puede ser posible?

    • @randallbiermann2525
      @randallbiermann2525 5 років тому +1

      el simplemente usó otra forma de instanciar los arrays normales, pues la dimensión del arreglo se adapta a el momento que esta asignándolo y declarándolo.

    • @alejandro.m.gonzalez
      @alejandro.m.gonzalez 2 роки тому

      Se trata de la *declaración explícita* de un array estático, por la que damos un valor (inicializamos) los elementos del array:
      String[] rios = { "Amazonas", "Orinoco", "Uruguay", "Paraná", "Río de la Plata" };
      Es una forma explícita de declarar un array de 5 posiciones, lo que haríamos con la sintaxis:
      String[] rios = new String[5];
      En esta última declaración nosotros no damos un valor explícito a los elementos, pero el compilador sí. ¿Cuál es este valor? El *valor por defecto* del dato de que se trate: si es un entero, 0; si es un float, 0.0f, si es un boolean, false... y si es un objeto, cualquier objeto (los strings lo son) ¡null!:
      String[] rios = { null, null, null, null, null };

  • @joseKKX
    @joseKKX 7 років тому +7

    pufffffffffffffff, corto y hasta mañana, exploté.

  • @cristianandresvargasgonzal4510
    @cristianandresvargasgonzal4510 8 років тому +1

    Hola profesor, se puede decir que esto remplazaria la carateriztica en java de los tipos de datos dinamicos ?

    • @pildorasinformaticas
      @pildorasinformaticas  8 років тому

      Hola !! Si por datos dinámicos te refieres a los ArrayList, no. No exactamente. Son dos cosas diferentes que se complemeentan. Un saludo!!

    • @wz_alex9798
      @wz_alex9798 7 років тому

      porque dentro de una clase y
      dentro de un metodo generico de la misma no puedo usar un atributo de la clase
      RESPONDER

  • @presentahn
    @presentahn 6 років тому

    Buenas tardes Ingeniero Juan: tengo un problema en el video No. 15 al utilizar la clase javax.swing especificamente cuando declaro las variables de tipo String usando el metodo JOptionPane, me presenta el siguiente error; Multiple markers at this line
    - The value of the local variable nombre_usuario is not used
    - Access restriction: The type JOptionPane is not accessible due to restriction on required library C:\Program Files\Java\jre1.8.0_161\lib
    t.jar
    - Access restriction: The method showInputDialog(Object) from the type JOptionPane is not accessible due to restriction on required library C:\Program Files\Java
    \jre1.8.0_161\lib
    t.jar, he ingresado para darle rt.jar permisos de admnistrador pero sigue siempre el mismo error, no se como corregir el error. muchas gracias por su ayuda.

  • @manueisabel
    @manueisabel 9 років тому +1

    Hola juan espero que estés bien! he estado echando un vistazo al curso entero y quería saber si este es el curso entero de java o habría más? o la posibilidad de comprar el curso entero de java como lo tienes con htlm5. gracias por tu ayuda.
    Un saludo!

    • @pildorasinformaticas
      @pildorasinformaticas  9 років тому +3

      alex martin Hola !! El curso tendrá más de 300 vídeos. Aún no hemos empezado con JEE. Faltan por ver cosas avanzadas y complejas como JDBC, Threads, Servlets etc.
      Cuando termine el curso (aún queda), lo pondré en mi web para la descarga. Un saludo

    • @manueisabel
      @manueisabel 9 років тому

      Ok! genial, un saludo!!

  • @wz_alex9798
    @wz_alex9798 7 років тому

    Enseña las conversiones
    es decir pasar de un generico a un int para una suma con otro generico

  • @wz_alex9798
    @wz_alex9798 7 років тому

    porque dentro de una clase y
    dentro de un metodo generico de la misma no puedo usar un atributo de la clase

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

    para pasarle un array con valores primitivos como numero seria así:
    Integer numeros[]= {1,2,3,4,5};
    System.out.println(MisMatrices.getElementos(numeros));

    • @alejandro.m.gonzalez
      @alejandro.m.gonzalez 2 роки тому

      Aclaración: la razón por la que puedes hacerlo es, naturalmente, porque esos números han dejado de ser datos primitivos y se han convertido en no otra cosa que en *objetos* de la *clase envoltorio* o _wrapper class_ *Integer* mediante un proceso automático de "autoboxing".

  • @xiaolinjinlin6228
    @xiaolinjinlin6228 5 років тому

    con arrays de tipo int no funciona en el método, me pide que crea un método que tenga como pase de parámetro de tipo int[]...

  • @Magistrado1914
    @Magistrado1914 8 років тому +1

    Excelente.

  • @wz_alex9798
    @wz_alex9798 7 років тому

    Quein me ayuda con conversiones :'''c ??

  • @hectorsuarez3773
    @hectorsuarez3773 6 років тому

    Lo que entendí en este vídeo: Es obligatorio que los parámetros que entren en el método generico, cumplan con la misma cadena de herencia que tiene la clase donde proviene dicho método genérico

  • @ivantejo8924
    @ivantejo8924 6 років тому +5

    Me exploto la cabeza. Menuda liada.

  • @luiseduardo-cn2zp
    @luiseduardo-cn2zp 9 років тому

    Como le hace para que el cursor al moverlo se ponga rojo lo que utiliza para explicar, es un programa o algo?

    • @wz_alex9798
      @wz_alex9798 7 років тому

      el diseño eso :vvvvv

    • @wz_alex9798
      @wz_alex9798 7 років тому

      porque dentro de una clase y
      dentro de un metodo generico de la misma no puedo usar un atributo de la clase
      RESPONDER

    • @Yonhbu
      @Yonhbu 7 років тому

      AlexS.w WorlD29 como así?
      Que intentas hacer ?

    • @wz_alex9798
      @wz_alex9798 7 років тому

      Men tienes uan guia donde se apliquen esas cosas con ejercicios para practicar Es que ejemplo De POO encunetro ejercicios donde debes aplicar herencia poliformismo y ect pero de estos temas no como interface generics y los anteriores me ayudas plis :''c

    • @Yonhbu
      @Yonhbu 7 років тому

      AlexS.w WorlD29 brother pues yo estoy también en las mismas, me explico estoy apenas viendo este video...en cuanto a ejercicios..puedes hacerlos tu mnismos no te complique....te pongo uno..créame una clase generica en la cual debas hacer todas las operaciones aritmética ( suma, resta etc.)...

  • @wz_alex9798
    @wz_alex9798 7 років тому

    Quien tiene una guia con ejercicios para usar todo sobre genericas y etc
    nesecito ejercicios para ver si entendi el tema
    plisssss

    • @ernestofavio6735
      @ernestofavio6735 4 роки тому

      Lo encontraste?

    • @wz_alex9798
      @wz_alex9798 4 роки тому +1

      @@ernestofavio6735 no amigo jajajja
      aprendi en mi primer trabajo xD

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

    WJJ-->Wiki Java Juan

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

    Me oís llorar? :'v

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

    System.out.println(MisMatrices.getMenor(fechas).getTime());