Último ejemplo de interfaces que vemos antes de comenzar con las clases internas. El ejemplo de este vídeo se utilizará en el próximo. Para más cursos, ejercicios y mauales visita: www.pildorasinformaticas.com
Пікірлер: 281
@pildorasinformaticas3 жыл бұрын
✅✅ ✅ ✅ ✅ 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. 💥💥💥
@maobesoya73355 ай бұрын
Sin palabras profesor. Sus clases deberian ser de obligatoria asistencia para todos aquellos docentes que quieren enseñar a programar. Una metodología impecable.
@senior_developer7 жыл бұрын
Chicos y chicas los que tenemos activado el addblock a ver los videos de Juan vamos a desactivarlo. Asi veamos los anuncios y youtube le pagara a nuestro maestro Sensei. Juan, muchas gracias por el trabajo realizado. Eres el mejor de los mejores.
@pildorasinformaticas7 жыл бұрын
Muchas gracias por el comentario y por animar a los demás a que colaboren con la causa. Un cordial saludo
@mgarc97797 жыл бұрын
yo lo tengo desactivado, justo es una buena manera de agradecer todo el esfuerzo del profe. Animo también a que todos lo hagan.
@fernandocarlos94777 жыл бұрын
a mi me sale una publicidad que puedo omitir a los 5 segundos (siempre la omito porque quiero que la clase del profe arranque cuanto antes XD) es suficiente o toca dejar que la publicidad abarque mas tiempo?
@fernandocarlos94777 жыл бұрын
Listo, perfecto, pero persiste mi pregunta dado que ignoro completamente el tema de retribución económica en los videos del propietario de un canal de youtube, la pregunta es: ¿ es suficiente dejar correr la publicidad por 5 segundos ( al cabo de esos cinco segundos puedes omitirla) para que el dueño del canal, en este caso el profesor Juan reciba la retribución económica o debo dejarlo correr más tiempo ?
@maniaconauta6 жыл бұрын
Rayos, tendre que volver a ver todos los videos de aqui al 1, D:
@pamkiller8 ай бұрын
Maravilloso curso que estoy siguiendo ahora en 2023 para tratar de aprender a programar en JAVA. Te felicito por él, Juan, eres un crack! Por alguna extraña razón, al hacer esta práctica la pantalla que muestra el mensaje desaparece y solo me muestra la hora una vez. No logro desentramar por qué.
@David-fq2eu6 жыл бұрын
El código del vídeo: import javax.swing.JOptionPane; import javax.swing.Timer; import java.awt.event.*; import java.util.*; public class PruebaTemporizador { public static void main(String[] args) { // TODO Auto-generated method stub DameLaHora oyente=new DameLaHora(); Timer miTemporizador= new Timer(5000, oyente); miTemporizador.start(); JOptionPane.showMessageDialog(null, "Pulsa aceptar para detener"); System.exit(0); } } class DameLaHora implements ActionListener{ public void actionPerformed(ActionEvent e) { Date ahora=new Date(); System.out.println("Te pongo la hora cada 5 sg: "+ ahora); } }
@YoSoyRaulTV7 жыл бұрын
Me encanta, joder. mi profesor tiene un doctorado y no explica tan bien con usted. sin luar a duda, el mejor canal de programacion que he visto
@pildorasinformaticas7 жыл бұрын
Gracias por el comentario. Me alegro de que te guste el curso. Un saludo!!
@Lucas-di4jy5 жыл бұрын
Yo tengo un profesor con una maestria en ingenieria y lo unico que hace es leer diapositivas, sin duda pildorasinformaticas es mucho mejor profesor
@Mofumofu-rw5eb3 жыл бұрын
Para enseñar no hace falta un doctorado. Se necesita un curso para aprender a enseñar o tener el don que tiene Juan. Es increíble como explica.
@edbt1585 жыл бұрын
Es un tema bastante complejo, sin embargo tu lo explicas de modo que todos podamos entenderlo. Muchas gracias profesor
@paulcano38409 жыл бұрын
Este ha sido el video que más me costado entender hasta ahora. Al final, creo que lo he conseguido. Están siendo geniales tus explicaciones. Un saludo.
@pildorasinformaticas9 жыл бұрын
Paul Cano Algunos son más complicados y en otros el que habla en los vídeos no está tan inspirado.... hay muchos factores en juego para entender bien la cosa. Un saludo !!
@holahola68355 жыл бұрын
Yo lo estoy haciendo así, quito el addblock para que al menos, tenga algo más, creo que se lo gana con creces. Gracias por todo Profesor.
@negroplatino81773 жыл бұрын
Sos un gran maestro!!!! estoy en segundo año de universidad y el tema de las interfaces nos mato a todos, hasta que encontre tus videos. La sencillez con que explicas todo es simplemente incleible. Vos tenes muy merecido el mote de GENIO. Mil gracias por lo que haces.
@lucasabalos6204 жыл бұрын
Hola, me esta pareciendo increíble este curso. El único problema es que no se como practicar estos conceptos, siento que entiendo perfectamente cuando explicas pero no puedo llevarlo a la practica. Alguien con mas experiencia que me pueda dar un consejo se lo agradecería. Soy totalmente autodidacta y me cuesta un poco encontrar el camino para aprender. Mi objetivo final es poder desarrollar aplicaciones para Android por eso investigue y me pareció que lo mejor iba a ser aprender Java primero y hasta ahora este es el mejor curso que vi.
@fuckingstone14524 жыл бұрын
Este mismo profesor (pildorasinformáticas) tiene un curso de Android que puedes hacer después de realizar este de Java!
@alanyanse88484 жыл бұрын
para poner en práctica te conviene iniciar un proyecto que te guste por ejemplo, en mi caso estoy haciendo una mascotita virtual entonces vas a repasar lo aprendido en el curso y vas a ver muchas cosas nuevas que se van a explicar a futuro en el curso y te van a costar menos porque ya tenés una idea gracias al proyecto... yo lo estoy haciendo así y me está dando resultado.
@cristhianlopez44564 жыл бұрын
@@alanyanse8848 hola amigo. Te rogaría q por favor me ayudes. Logre conseguir una pasantia en una empresa reconocida en mi país. Y quisiera q me ayudes. Me dieron una tarea y no entiendo muy bien lo q tengo q hacer. Te dejo mi wp por favor te pediría.,, 🙏+591 77904696
@miltonlaracieza33455 жыл бұрын
Gracias por el curso cada día aprendo mas ;
@alexchamorro18845 жыл бұрын
Gracias por el aporte..!!,eres un genio enseñando
@abimaelmnzc2381 Жыл бұрын
Sinceramente un gran video, nada mejor que la practica ❤❤
@jesusn75768 жыл бұрын
Me gustan sus video y tambien que ayuda a entender las explicaciones que da la API de las clases. Muchas Gracias.
@Ladymuuh8 жыл бұрын
Adoro su canal, explica las cosas perfectamente y me engancho fácilmente a sus vídeos, muchísimas gracias
@SinNombre1018 жыл бұрын
Muy buena explicacion y vídeo , he aprendido más cosas de las que he podido imaginar. Gracias por su trabajo y dedicación.
@omgcoin9 жыл бұрын
Sencillamente el mejor profesor que he podido ver
@pildorasinformaticas9 жыл бұрын
omgcoin Gracias !! Un saludo
@osvaldocire22796 жыл бұрын
Que buen video! Gracias profesor.
@estivenmartinez5764 жыл бұрын
Hola Juan en el minuto 21:04 dices que con la instrucción temporizador.start(); se comienza a ejecutar el temporizador, pero en el proceso de ejecución cuando la lea el programa muere, eso no me quedo claro inicia el proceso, pero cuando lo lee lo detiene. No entendí muy clara esa parte.
@ArmanGO-Oficial3 жыл бұрын
Tampoco me quedo claro a que se referia el profe en esta parte 😵
@philipfansworth6 жыл бұрын
Ecxelente!!! Muchas gracias. :)
@damianllopar93484 жыл бұрын
Un genio! lo facil que haces la explicacio!! Sos el Julio Profe de la programacion!!
@jhonnypb70677 жыл бұрын
excelente, como siempre.....
@anyersonespana6831 Жыл бұрын
Excepcional, Gracias, Maestro.
@korderoman8 жыл бұрын
Sinceramente, no dejo de aprender de tus lecciones, es una labor muy importante la que realizas...
@miguelangelvasquezgarcia82352 жыл бұрын
Gracias profesor por cada uno de los videos, aqui retomando el curso que lo habia dejado por una u otra razon y cada que avanzo un nuevo video ahora comprendo cada explicacion. Muchas gracias.
@guillermorivadeneira3854 жыл бұрын
Es buenisimo el video, tengo muchos profesores y no hacen las clases tan practicas, ademas muchos de los proyectos que haces me sirven de inspiracion para poder realizar cosas por mi cuenta, un millon de gracias Juan
@joselosddrd7 жыл бұрын
Este video es brutal. Muestra exactamente lo que es el Forcing Behavior on a class. Asi lo lei en el libro. Excelente.
@abadcompany50987 жыл бұрын
Gracias cx. Me gustó mucho.
@maxitorres77 жыл бұрын
Excelente el Curso!! Me encanta! El mas completo en youtube creo yo. Muchas Gracias!
@pildorasinformaticas7 жыл бұрын
Gracias !! Un saludo
@alejandrocastillo926010 жыл бұрын
Muy buen vídeo para comprender el funcionamiento de Interfaces y como introducción a los eventos.
@pildorasinformaticas10 жыл бұрын
Alejandro Castillo Gracias. Un saludo
@arturosach96186 жыл бұрын
Hola a todos desde México!!! Les deseo antes que nada mucho éxito y como siempre no me canso de decir que estos son los mejores cursos existen. Quería compartir como dato curioso que mi programa de este video funcionó sin problema sin System.exit(0); Saludos de su amigo Arturo!
@pildorasinformaticas6 жыл бұрын
Hola !! ¿Has probado a meter alguna instrucción más después de la ventana JOptionPane? Si lo hacer observarás que el programa continúa la ejecución por esas líneas de código. System.exit(0) detiene la ejecución del programa y sale del flujo. En este ejemplo creo recordar que daba igual ponerlo o no por la simplicidad del código, pero si hubiera código después y quieres detener la ejecución, deberás ponerlo. Un saludo!!
@adriancordova16183 жыл бұрын
Excelente ejercicio un poco complicado pero paso a paso y con paciencia se logra entender, además de que con mis conocimientos de JavaScript y PHP me resulta más fácil entender conceptos que todavía no se ven en este curso por ahora. Podemos decir entonces que el objeto "oyente" es el EVENTO, bueno un objeto que será utilizado como evento, y para ello debe tener implementado la interfaz ActionListener para indicarle que uno de sus métodos será utilizado como EVENTO el cual debe llamarse actionPerformed, ya que el objeto puede tener otros métodos y propiedades suyas. Muchas gracias maestro Juan buen video.
@carlosrcabrera4777 Жыл бұрын
Professor, lo que mas me gusta de estas clases es que cuando tenemos un problema (en mi caso porque , me propongo siempre hacerlo distinto, manteniendo la esencia de la materia, ej.uso el VS Code Editor) quiero entonces mencionar a aquellos que han tenido problemas como "Error: Could not find or load main class", simplemente prueben en VSCode la palabra pequeña Run|Debug "Run" que el editor despliega por si mismo...click en Run y podrian ver una mejor ejecucion. saludos...seguimos
@jmansanetperez5 жыл бұрын
Muchas gracias.
@zeusclash14756 жыл бұрын
wao al fin volvi a ver la luz xd lo he visto como 5 veces xd
@manuelfernandez52375 жыл бұрын
Genio!!!!!!!!!!
@antoniol.93405 жыл бұрын
Echando un vistazo (no muy exhaustivo, todo hay que decirlo) a los comentarios del vídeo no he encontrado mención alguna a lo que se dice en el vídeo sobre el minuto 3:30. Y es que, si no he entendido mal, se dice que el paquete por defecto es java.util y que por tanto no debe o no es necesario importarse. No obstante en el vídeo 13 del curso (sobre el minuto 10:54) se dice explícitamente que el paquete por defecto es java.lang. Muy probablemente este interpretando la información erróneamente y donde yo veo una incongruencia (a saber que en este vídeo se dice que el paquete por defecto es java.util y en el vídeo 13 es java.lang) no sea más que un fallo por mi parte, en tal caso bienvenida sea la pertinente corrección. En caso contrario, el ánimo con el que se hace este comentario es simplemente constructivo para con la comunidad alrededor de este canal. El usuario @Luis Marino ya comentó acerca de esto mismo. Efectivamente el paquete por defecto es java.lang.
@pildorasinformaticas5 жыл бұрын
Si en algún momento del curso se dijo que el paquete por defecto es java.util, se trata de un error por mi parte. El paquete por defecto en java y por lo tanto no es necesario importarlo, es el paquete java.lang. Un saludo!
@programaprograma13 жыл бұрын
@@pildorasinformaticas No se preocupe, que los que estamos siguiendo el curso, sabemos que es un detalle que se le paso, ya que es ser humano y esta explicando algo complicado... Muchas gracias por sus videos. Simplemente el que no entendió que entendió, es xq no viene siguiéndooslo sus videos profe. Saludos.
@giorgiechannel40915 жыл бұрын
Genial mil gracias
@Terzaghi128 жыл бұрын
Tambien hay que mencionar que se puede importar java.util.Date; en lugar de la clase perteneciente al paquete javax.swing.Timer........Aunque creo que la segunda forma es mejor, ya que de esa manera sabes bien cual clase Timer estas usando
@Alex-eq1cs Жыл бұрын
Tampoco nos hace falta crear una nueva clase para el objeto que necesita Timer. Podemos implementar el ActionListener en la única clase que tengamos, donde está el main, añadimos el método ActionPerformed que nos obliga y luego, el objeto que generamos de oyente, lo creamos de la misma única clase. En este caso, simplificamos el código a la mitad porque sólo usamos una clase, pero también entiendo que es más interpretable generando una nueva clase. Lo que a mi ya comienza a volverme loco tener varias clases en un único archivo :D
@jesusgacia56664 жыл бұрын
Bueno video muchas gracias, pude ver que con miTemporizador.stop(); tambien podemos detener el envio de los eventos al oyente
@eduardotrujillo93164 жыл бұрын
Ya se que pillará lejano en conocimientos pero pensaba que se iba ya a hacer algún comentario del Thread Sleep, que creo que se usa para estancar una ejecución. Thread es algo que lo he visto, se que existe pero hasta ahí mis conocimientos. Espero llegar pronto al lugar oportuno donde se explique. Igualmente es agradable conocer alternativas, ya que al fin y al cabo, la gracia de todo esto es contar con flexibilidad.
@CarlosBenites197 жыл бұрын
Quien descarga en audios y escucha estos cursos por su celular? un genio Juan
@macrosszeroshin5 жыл бұрын
No por que si no no monetizan, todos tenemos que poner de nuestra parte...
@zeusclash14755 жыл бұрын
@@macrosszeroshin hey pana xd voy contigo son pocos los que estan realizando este curso xd
@MrEgdy4 жыл бұрын
@@zeusclash1475 Hey pana como van con el curso
@ulernia97294 жыл бұрын
pero... en que momento se crea el objeto AcionEvent e... quien lo construye y cuando se lo pasa al método actionPerformed.
@aalbersi7 жыл бұрын
Voy a tener que ver nuevamente interfaces y clases internas desde el principio porque ya me tranque jaja... Pero muy bueno los videos
@ignacioantoniojeriagarrido68778 жыл бұрын
Hasta que entendí lo de las interfaces. Me costó un poco pero lo comprendí xDD Gracias profesor
@pildorasinformaticas8 жыл бұрын
+Ignacio Antonio Jeria Garrido Son conceptos complejos que a todo el mundo le cuesta la primera vez. Un saludo!!
@cristianmerono8 жыл бұрын
Juan , lo primero gracias por este maravilloso curso que me está ayudando tanto y enhorabuena por el éxito que te propicia . Mi pregunta es: ¿Por qué vídeo recomiendas que vayamos para empezar tu curso de Android , para enterarnos de todo? Mucho ánimo y un saludo.
@tobiasr.galeanoc.6973 жыл бұрын
tambien me gustaria saber! estas en condiciones de responder tu mismo hoy en dia esa pregunta?. Me ayudarias mucho.
@ivanmalaiu4 жыл бұрын
Excelente
@miguelangelramirezsanchez43594 жыл бұрын
Wow trans cada videos mas personas se salen y yo que cada vez tengo mas ganas de aprender
@zulumopuku53704 жыл бұрын
professor si voce podesse publicar o codigo fonte , o curso seria ainda mais TOP. Mas tenes un grand talento para lo que haces... muchas gracias
@NFTGamesAndTrades7 жыл бұрын
También podemos crear nuestro objeto oyente de tipo interface ActionListener haciendo uso del Principio de sustitución. DameLaHora oyente = DameLahora(); Hecho por Juan min 10:55 ActionListener oyente = new DameLaHora(); Hecho por mi.
@pildorasinformaticas7 жыл бұрын
Estupendo aporte. Un saludo!!
@SimonMeansSimulation6 жыл бұрын
Profesor, feliz tarde. ¿Por qué no da un error el programa si no se ha inicializado el ActionEvent e?
@gerardocabello98783 жыл бұрын
Tengo la misma duda, solo instanciamos un objeto de la clase DameLaHora, y este objeto lo pasamos como parámetro al constructor de la clase Timer...pero nunca se llama a la función actionPerformed ni se le pasa el parámetro llamado “e” de tipo ActionEvent... como es posible? 😅
@mrlx-15203 жыл бұрын
Cuidado al importar los paquetes importe los paquetes equivocados media hora para darme cuenta xd buen video
@franciscobarrachinablanco91299 жыл бұрын
Hola juan !!! He encontrado el error viendo el video 53, cuando haces un repaso de lo hecho en el video anterior. Era una llave de cierre que me faltaba poner. Gracias de nuevo y un saludo.
@pildorasinformaticas9 жыл бұрын
francisco barrachina blanco Hola !! Me alegro que lo hayas visto porque ese tipo de errores son difíciles de detectar. Un saludo
@salgresan9 жыл бұрын
saludos maestro una anotación yo para detener la clase timer no utilize System.exit(0); si no que use el metodo mitemporizador.stop(); estoy en lo correcto? gracias de antemano
@danielcalderon87275 жыл бұрын
Hola!! Gran curso y aún bastante útil. Por ahí vi una pregunta similar a esta pero no vi una respuesta que me aclarara. Es con respecto al inicio del temporizador y si el hecho de necesitar "detener" la finalización del programa para que se siga escuchando el evento. 1 miTemporizador.start(); 2 JOptionPane.showMessageDialog(null, "Pulsa Aceptar para detener"); 3 System.exit(0); Al momento de ejecutar la línea 2 y, mientras no se de click en Aceptar, la instrucción 1 sigue corriendo. ¿Es esto un proceso asíncrono, multihilo o algo similar? Gracias!!!
@mcsedrap90907 жыл бұрын
Hola Juan, puede que sea pesado pero me gusta bastante programar y sinceramente me sirves de gran ayuda. Eres como una guía que hace que mis pasos sean mas largos y entretenidos. Posteriormente te quiero comentar, sé que de este código ya ni te acuerdas, pero estoy implementando el mismo código y me gustaría saber como implementar un contador que cada vez que me el mensaje de showMessageDialog intervenga cada 5 segundos, el programa aumente el contador y me muestre el resultado. Saludos Juan y de veras que te agradezco el estar ahí con nosotros al pie del cañón. Saludos máquina,
@mcsedrap90907 жыл бұрын
Ya está, me contesto a mi mismo. Introduzco un atributo con un valor por defecto "0"; y en el metodo actionPerformed aumento el valor en uno cada vez que me muestre el mensaje. Saludos Juan
@eliasnovelo6502 Жыл бұрын
@@mcsedrap9090 :V
@courezprogramacion80234 жыл бұрын
Primero que nada gracias por los videos, son de mucha ayuda y se le agradece su tiempo y dedicación. Quisiera hacer una pregunta ya que me quedo una duda. Si se supone que el programa se ha detenido en la linea que esta la instruccion JOptionPane.showMessageDialog(null,"pulsa aceptar para detener") , mi pregunta es. ¿Porque se sigue imprimiendo la hora cada 5 segundos? si se supone que el programa se ha detinido.
@chiuvi48 жыл бұрын
Muy buenas las explicaciones de los videos!! queria preguntar si afecta de alguna manera el rendimiento del programa si solo se importan las clases especificas de los paquetes que se usaran en ves de importar el paquete entero, del cual talvez usare 1 o 2 clases. Saludos
@pildorasinformaticas8 жыл бұрын
No, no afecta. Estás consumiendo más recursos, pero es un gasto que no mermará el rendimiento de tu programa. Un saludo!!
@COMINO6287 жыл бұрын
Hola! Tengo la siguiente duda: Jugando con los tiempos del timer, me percate de que si colocas un tiempo muy pequeño, por ejemplo 500, el programa sigue en ejecución varios segundos después de que diste ok en la ventana emergente, ni hablar de un tiempo sumamente pequeño de 50, pues se queda en ejecución durante mas tiempo. ¿esto a que se debe? Saludos!
@claudiomendieta6 жыл бұрын
Al sobreescribir el método actionPerformed() me pide obligatoriamente que ponga encima del método un texto: @Override No se si esto es nuevo para la versión que estoy usando, pero en el vídeo se ve que no fue necesario colocar este texto. Un saludo!!
@0scarDev4 жыл бұрын
cool
@lamug7 жыл бұрын
Entonces la clase Timer puede ser como addEventListener de Javascript?
@mariotorres46898 жыл бұрын
Profesor pildorasinformaticas, podría hacer un vídeo de expresiones lambda o en todo caso si ya tiene una me podría decir en qué vídeo esta? muchas gracias sus vídeos complementan lo adquirido en clase.
@pildorasinformaticas8 жыл бұрын
No lo tengo. Gracias por la sugerencia Espero poder meterlo por ahí. Un saludo!!
@martinbenitez60933 жыл бұрын
Hola a todos, alguien sabe porque me pide implementar un @override sobre el metodo acctionPerdormed de la clase DameLaHora?
@astridbompart33948 жыл бұрын
Me gustó mucho esta clase, entendí todo excelente solo que tengo una pequeña duda, een el metodo actionPerformed no se que se hace con la variable que nunca se utilizó en el programa o por lo menos no me di cuenta cuando la usamos. Aquí esta el codigo, por si tiene algun momento para echarle un ojo! Gracias por sus clases y saludos!! package poo; import java.awt.event.*; import java.util.*; import javax.swing.*; import javax.swing.Timer; public class PruebaTemporizador { public static void main(String[] args) { // TODO Auto-generated method stub DameLaHora oyente=new DameLaHora(); //ActionListener oyente=new DameLaHora(); Timer miTemporizador=new Timer(5000, oyente); miTemporizador.start(); JOptionPane.showMessageDialog(null, "Pulsa Aceptar para detener"); System.exit(0); } } class DameLaHora implements ActionListener{ public void actionPerformed(ActionEvent e){ Date ahora= new Date(); System.out.println("Te pongo la hora cada 5 sgs: " + ahora); } }
@1688amg6 жыл бұрын
Astrid Bompart hola la llamada de la interfaz se guarda en el objeto oyente bahh no se guarda sino que al crear el objeto oyente como damehora ya poniendolo en el segundo parâmetro de Timer hace que al ejecutar el main y encontrarse con oyente y vê que es de tipo damehora busca damehora y ejecuta esa clase al poner start
@soyfercarvajal1 Жыл бұрын
Alguien me podria decir, en el caso de este ejemplo como prodria mostrar en una ventana el mensaje de Te muestro la hora cada 5 segundos y no en consola. Gracias.
@mariailope6 жыл бұрын
Disculpe que hago una pregunta de principiante: no comprendo por qué el botón "aceptar" de la ventana JOptionPane... aparece en idioma español. ¿Es porque automáticamente detecta mi idioma/país? Muchas gracias.
@teldatamcy56566 ай бұрын
Gracias. Chévere 🍌2024!!!
@mugatu20174 жыл бұрын
tambien se hubise podido hacer utilizando "centinellas" que rompan el flujo del programa
@jorgemeza43644 жыл бұрын
meter dentro todo dentro de un While no?
@jorgecallejas49023 жыл бұрын
@pildorasinformaticas ¿Cómo puedo realizar comunicación serial con Java?
@carmen75985 жыл бұрын
hola, yo he empezado ahora con sus videos y me encantan, ningún profesor me ha hecho ver lo fácil que es Java. Si es posible me gustaría hacerle un pregunta: La clase Timer que utilizamos en el video es del paquete java.swing, es public , extends Object y implement Serializable, no?, pues como Serializable es una interfaz como no se implementa también su método?. Espero haberme explicado bien, gracias de antemano.
@pildorasinformaticas5 жыл бұрын
Hay 3 clases Timer en la API de Java. Nosotros utilizamos en el curso la del paquete java.util la cual no implementa Serializable. Tú te refieres a la clase Timer del paquete swing la cual si implementa Serializable y que no hemos utilizado en el curso. Un saludo!
@carmen75985 жыл бұрын
@@pildorasinformaticas hola, no quiero ser impertinente, pero el paquete que utilizamos es swing, de hecho al importarla le decimos al programa import javax.swing.Timer, para que no se produjera un conflicto con java. util, que tambien la tiene.
@pablogarcialopez40054 жыл бұрын
@@carmen7598 Tienes razón en que estamos implementando la interfaz, pero si en la API entras en ella, no hay ningún método construido dentro de ella. Creo que es por eso por lo que no tienes que declarar ninguno.
@robertplant70807 жыл бұрын
Sr.Pildorasinformaticas sólo una pregunta muy básica creo, cuando usted utiliza este nuevo mensaje de presentación JOptionPane.showMessage(null, "mensaje"); y el parámetro que le envía es un null; por que le envías un null!! Una vez yo estuve en curso de java; y ví que el primer parámetro es un string; osea que si quiero que sea una ventanita de eliminación(La idea es que salga allí en la ventana un icono de eliminación que yo tenga en un paquete de un proyecto x) y quiero que ese mensaje haga referencia a una ventana de eliminación, lo que tengo que indicarle la ruta donde se encuentra la imágen y como usted no tiene ninguna imágen y el video no se acerca creo todavía a ese tema, por eso usted creo que le pone Null!! Será así SrPil...!! (y)
@alejandrocastillo926010 жыл бұрын
Una pregunta Juan, en el primer vídeo hablabas sobre el temario de la primera parte del curso. Y también decías que todo el curso, parte una y dos, constaría de unos 250 vídeos. Mi pregunta es cuantos vídeos más faltan para acabar la primera parte. Otra consulta, nunca he dado JavasScript, y no sé si me recomiendas meterme con tu curso de Javascript o puede llegar a liar hacer los dos lenguajes a la vez. Si no, haría el de HTML5. Saludos y gracias
@pildorasinformaticas10 жыл бұрын
Alejandro Castillo Hola !! El curso va a irse más allá de los 250 vídeos. Es un curso que ya he impartido de forma presencial pero nunca online y por eso no se exactamente cuántos vídeos me va a ocupar. La cifra que di al principio era estimada. A la pregunta de cuántos vídeos faltan para terminar la primera parte, la verdad es que no lo se pero puedo calcular que unos 75 u 80 más o menos. En cuanto a si recomiendo empezar a la vez otro curso la verdad es que depende de cada uno. Hay personas que tienen facilidad para asimilar código de programación y no tienen excesivos problemas a la hora de llevar varios cursos a la vez. otras personas les resulta muy complicado. Si tuviera que recomendar algo, diría que no hagas dos a la vez. primero uno y luego otro. A mi como profesor me cuesta cambiar el chip de un lenguaje a otro cuando imparto dos a la vez. imagino que al alumno le resultará aun más complicado (excepto portentos de la nza que alguno hay por aquí). Un saludo
@jorgeb27897 жыл бұрын
Yo la verdad me metería a hacer el curso de phyton a la vez pero... cuantos más cursos esté metido mas lento avanzare en ellos, además ya tengo bastante con estar en primero de Universidad y estar estudiando Java cuando ni siquiera me examino de ello. (esque me aprendi C entero y me apetecía seguir aprendiendo).
@rootclever28836 жыл бұрын
Solo por esa interfaz hace que el flujo se quede ahi, y se siga ejecutando el Timer? creo que es asi :l
@KIWAIMPRESOS10 жыл бұрын
Buen dia juan una pregunta es que formatie el equipo y volvi a ejecutar el eclipse y copio los package anteriores y los pegue otra vez en el workspace y no me aprece cuando abro el eclipse. y de antemano Gracias.
@pildorasinformaticas10 жыл бұрын
Hola !! Debes crear en Eclipse un proyecto nuevo (se explica al principio del curso), después meter los archivos .java en la carpeta src y los archivos .class en la carpeta bin. Espero que lo consigas. Un saludo
@DavidRodriguez-uj4ls7 жыл бұрын
Si solo queréis la hora, podéis pillarla de objetoDate.getHours() objetoDate.getMinutes() y objetoDate.getSeconds()
@sfhj84359 жыл бұрын
Buenas noches. Gracias por sus videos son muy buenos; Disculpe una pregunta, osea que toca implementar todos los metodas de las interfaces asi no se utilicen todas? agradezco una respuesta.
@pildorasinformaticas8 жыл бұрын
+Johan Fonseca Sanchez Hola !! Si implementas una interfaz, debes desarrollar todos los métodos que tenga esa interfaz. Cuando una interfaz tiene muchos métodos, existe la alternativa de utilizar clases adaptadoras para no tener que desarrollar todos los métodos de la interfaz. Esto también se explica en el curso. Un saludo
@sfhj84358 жыл бұрын
Si, pero creo que hasta este punto no lo hemos visto.?
@pildorasinformaticas8 жыл бұрын
Creo que no. Como tengo más de 650 vídeos en el canal, me resulta complicado saber de memoria que se vio hasta este punto. Un saludo
@danielhernandez54014 жыл бұрын
28/04/2020 ahi vamo
@jairodanielsamaniegovillac72808 жыл бұрын
Disculpa por qué usas System.exit()?, noté q no hay ninguna diferencia si no lo pongo, podrias explicarme cual es el motivo del uso de ese metodo?
@elcristianodeacero3138 Жыл бұрын
¿Es normal que me marque error en la línea del showMessageDialog y aún así arranque?
@frey.o.o6 жыл бұрын
Juan hola, observo que montaste un curso de JavaSE en UDEMY. he llegado hasta el video 50 en este canal y quisiera saber si hay diferencias en los videos montados en la plataforma UDEMY con los de KZbin. Muchas gracias.
@pildorasinformaticas6 жыл бұрын
En los vídeos no hay grandes diferencias, excepto que en Udemy no voy a hablar de Applets porque están obsoletos, y si lo haré por ejemplo de Java FX además de mencionar alguno que otra novedad. La diferencia fundamental es que el curso de Udemy va con ejercicios prácticos por cada tema, test de evaluación y documentación PDF acompañando al curso. Un saludo!!
@joandoen Жыл бұрын
Se me presentó un problema en este ejemplo, me pide que la clase DameLaHora sea static, no entiendo porque en el ejemplo no te lo pide, porque si no le pongo el modificador también me da error.
@believer32167 жыл бұрын
tengo una inquietud, he estado siguiendo el curso de java y en el ejercicio de este video al instanciar el odjeto oyente de la clase Damelahora en la instancia de timer me lanza un erro y me dice que constructor indefinido y no he podido resolverlo por favor ayuda [ Damelahora oyente = new Damelahora(); Timer mitemporizador = new Timer(5000,oyente); este es el error The constructor Timer(int, Damelahora) is undefined ]
@javiermaruiz4 жыл бұрын
Me pasa lo mismo
@eduato_yt3 жыл бұрын
17:26 veo que otra solucion puede ser poniendo esto: javax.swing.Timer miTemporizador = new javax.swing.Timer(5000, oyente);
@javigarsan8 жыл бұрын
Hola de nuevo. Tras ver vídeo me surgen dos dudas que paso a planteart: 1.- No entiendo para que sirve la última instrucción que hemos puesto System.exit(0); ya que como tú mismo explicaste en el vídeo, tenemos que poner en mensaje con la clase JOptionPane para evitar que el programa finalice por sí solo. Yo lo he probado sin esta instrucción y me funciona exáctamente igual. Entonces ¿Cuál es su finalidad? 2.- Cada vez que se ejecuta el temporizador, llamamos al procedimiento actionPerformed de nuestra clase DameLaHora. En este procedimiento lo primero que hace es crear un objeto de tipo Date, que se queda ahí. A los 5 segundo se vuelve a ejecutar el procedimiento y vuelve a crear otro objeto Date, a los 5 segundos otro, y a los 5 segundos otro. ¿Estamos ocupando cada 5 segundo espacio en memoria que tras muchas ejecuciones pudiera causar un desbordamiento de la memoria? o ¿Al finalizar el procedimiento actionPerformed se libera la memoria de todos los objetos creados en el mismo? Supongo que esta será la respuesta, pero te agradecería que me la confirmases. Muchas gracias.
@eliasnovelo6502 Жыл бұрын
NUNCA TE LO CONFIRMÓ XD
@amadodiaz35524 жыл бұрын
21:29 while(true);
@ingenieriaent.i71114 жыл бұрын
Hola buenas, una duda; Si quiero usar las dos o tres clases Timer de los diferentes paquetes en una misma clase, hay alguna forma de hacerlo para que al implementarlas se diferencien una de otra?
@ArmanGO-Oficial3 жыл бұрын
Creo que esto lo determina los metodos que contiene cada clase Timer
@jandropr6 жыл бұрын
Perdón pero me sale este error al compilar: "Exception in thread "main" java.lang.NoClassDefFoundError: com/mercury/ftjadin/hooks/interfaces/EventListenerListHookQTJA". Solo funciona si a Timer le paso un null en el argumento donde debe de ir el ActionListener.
@makish31319 жыл бұрын
Hola, me ha surgido una duda por tu explicacion sobre el minuto 14 en el que explicas como solucionar los errores en caso de importar dos paquetes que tienen un metodo con el mismo nombre y es importando el metodo del paquete especifico. No se si se puede llegar a dar el caso (ya me suelen decir que soy un poco rebuscado), pero ¿Que ocurre si necesito utilizar los dos o mas? es decir, que necesite utilizar javax.swing.Timer; y javax.util.Timer. ¿Hay formas o es incompatible? pd. System.exit(0); no es necesario para finalizar el programa, al aceptar ya finaliza. Saludos,
@pildorasinformaticas9 жыл бұрын
Antoni sacristan martinez Hola !! En ese caso concreto no queda más remedio que utilizar el nombre completo del paquete con todos los nombres de la clase, es decir: javax.swing.Timer temporizador=new Timer(); javax.util.Timer temporizador2=new Timer(); Esta es la única forma que tiene el compilador de diferenciar las dos clases. Si hubiéramos importado los dos paquetes enteros (javax.swing.*; y javax.util.*) y hubiérmoas utilizado la clase Timer sin más, daría un error de complación al no saber el compilador a qué clase Timer nos referimos. Un saludo
@aleberas82598 жыл бұрын
Maestro una pregunta ? por que tenemos que pasarle el parametro de la instancia de la clase DameLaHora al constructor Time ? el constructor recorre la instancia de la clase y busca el metodo ActionPerfomed ?
@pildorasinformaticas8 жыл бұрын
Hola !! Hace años que grabé este vídeo y tengo más de 800 en el canal. no recuerdo el código. Dime minuto y segundo del vídeo donde aparece la instrucción y te lo explico. Un saludo
@mcsedrap90907 жыл бұрын
No sé si encontraste la respuesta, pero estoy revisando los comentarios para ampliar conocimientos. El profesor comentó que lo que realmente se hace con clases que importen ActionListener es usar el metodo ActionPerformed que es implementado a través de la interfaz.Si nosotros creamos una instancia de DameLaHora lo que hacemos es eventuar o mejor dicho buscar el metodo ActionPerformed() que realiza las operaciones que introducimos en el cuerpo del metodo cada 5 segundos.
@sarreta017 жыл бұрын
Buenas, te doy otra vez las gracias por este pedazo de curso. Tengo un "problema" y es que estoy haciendo anotaciones tipo //al lado de los códigos que vamos viendo y ,como tengo el background de Eclipse en negro para que la vista no sufra tanto con el blanco, el color de dichas anotaciones se hace casi imperceptible con el fondo negro. Mi pregunta es: ¿Qué parámetro de color tengo que modificar para cambiar el color de las anotaciones? Ya sé cómo se llega a la ventana de colors and fonts. Lo único que me falta es saber qué nombre, de todos los que hay, es el que corresponde a los comentarios.(Hasta la fecha no he podido dar con la tecla ;-)) Gracias de antemano. Salu2
@pildorasinformaticas7 жыл бұрын
Pues no tengo idea. Me acabo de meter a buscarlo y veo como cambiar el color de todo menos los comentarios. Es algo que nunca tuve necesidad de cambiarlo. A ver si alguien que lea esto te puede orientar
Carlos M, gracias, duré buscando en eclipse todo un día.
@angelicasofiahentziglesias63243 жыл бұрын
Oye amigo, te quiero comentar algo que note en tu curso, en ves de seleccionar el icono de error en la consola del programa de tu clase para crear automaticamente el metodo lo creas tu haci que me preguntaba si hay algun problema en hacerlo asi? espero que no lo haya porque siempre lo hago asi, en fin gran curso amigo
@pildorasinformaticas3 жыл бұрын
No hay problema. Puedes seguir así. Un saludo!
@armandopenaleonett12588 жыл бұрын
el paquete por defecto no es java.lang ?
@pildorasinformaticas8 жыл бұрын
Así es. ¿Dije algo diferente en algún momento? A veces uno se equivoca.... Si es así dime minuto y segundo para introducir una anotación correctora. Un saludo!!
@armandopenaleonett12588 жыл бұрын
en el minuto 3:30 por ahi ha dicho que el paquete por defectoe es java.util, ahora que tengo cierta certeza que me leera aprovecho para agradecerle sinceramente por su canal muchas gracias señor siga asi
@sfhj84359 жыл бұрын
Disculpe otra cosa, pero usted no entendi casi, esto no se entendera mejor cuando estemos en el mentodo Listener? gracias
@luissuarez22227 жыл бұрын
cual viene a ser la clase que te da la Hora en ese mismo momento?? es Date no? o Timer
@calexito94487 жыл бұрын
La que te da la hora es Date (Llamando uno de sus constructores que te da la hora exacta) y Timer viene siendo una clase manipula el comportamiento del programa en base al tiempo (Como en este caso hacer repeticiones cada 5000 mili segundos)
@__AndresGarcia6 жыл бұрын
Tengo una duda, por que al momento de utilizar el metodo start( ) lo utiliza como si fuera statico para iniciar mitemporizador si en la API de JAVA dice que solo es void..
@1688amg6 жыл бұрын
andres garcia hola en el ejercicio no aparece como estático o sea no dice Timer.start () Dice el objeto mitemporizador.start ()
@__AndresGarcia6 жыл бұрын
Gracias..
@gattaca177 жыл бұрын
Profesor una pregunta. Me sale este error al querer compilarlo y verdad no se de que va poque segun yo he seguido al pie de la letra su código. Saludos "No enclosing instance of type PruebaTemporizador is accessible. Must qualify the allocation with an enclosing instance of type PruebaTemporizador (e.g. x.new A() where x is an instance of PruebaTemporizador)." Muchas gracias por el curso. -Saludos
@pildorasinformaticas7 жыл бұрын
Gracias por el comentario. Según la descripción del error. lavariable PruebTemporizador está fuera de ámbito, es decir, no es accesible. Sin ver el código no puedo decirte mucho más. Puedes copiar y pegar por aquí el código si lo deseas para ver si yo u otra persona lo podemos ver e indicarte el posible error. Un saludo!!
@gattaca177 жыл бұрын
Gracias por responder maestro, ya vi que era cuestión de una llave de cierre. :(< -Saludos
@elmesiasyourpapi6 жыл бұрын
Hola profesor Juan, tengo un par de dudas, entonces aunque puedan existir Clases con el mismo nombre en diferentes paquetes, en un mismo programa no se pueden usar verdad? Y la otra, me gustaría saber por qué se usa la clase Date, si ya existe la clase GregorianCalendar, no he estudiado mucho las dos, pero se ve mucho más completa GregorianCalendar
@haissankhufash60733 жыл бұрын
Con la clase GregorianCalendar asignamos una fecha por cuenta propia, ya que usamos tres parámetros de tipo entero: GregorianCalendar Calendario = new GregorianCalendar(year, month - 1, day); después de esa instancia le asignamos a la variable fecha lo siguiente: Date fecha = Calendario.getTime(); y así obtuvimos cualquier fecha que se haya pasado (sin hora). En lugar de lo que hemos hecho aquí, ya que vemos la fecha y hora actual con solo llamar al constructor vacío de Date.