[{"data":1,"prerenderedAt":1613},["ShallowReactive",2],{"navigation_docs":3,"-clases-objetos-joptionpane":412,"-clases-objetos-joptionpane-surround":1608},[4,18,43,118,160,200,231,320,346],{"title":5,"path":6,"stem":7,"children":8,"icon":17},"Evaluación","\u002Fintroduction","1.introduction\u002F1.index",[9,12],{"title":10,"path":6,"stem":7,"icon":11},"Método de Evaluación","i-iconamoon-cheque-bold",{"title":13,"path":14,"stem":15,"icon":16},"Plataforma de Aprendizaje","\u002Fintroduction\u002Fplataforma","1.introduction\u002F2.plataforma","i-lucide-book-marked","i-lucide-house",{"title":19,"icon":20,"path":21,"stem":22,"children":23,"page":42},"Entorno de desarrollo","i-codicon-edit-code","\u002Fide","2.ide",[24,28,33,37],{"title":25,"path":26,"stem":27,"icon":20},"¿Qué es un IDE?","\u002Fide\u002Fentorno","2.ide\u002F1.entorno",{"title":29,"path":30,"stem":31,"icon":32},"Estructura de un Proyecto","\u002Fide\u002Festructura","2.ide\u002F2.estructura","i-clarity-tree-view-line",{"title":34,"path":35,"stem":36,"icon":20},"La compilación en un IDE","\u002Fide\u002Fcompilacion","2.ide\u002F3.compilacion",{"title":38,"path":39,"stem":40,"icon":41},"Depuración de Código","\u002Fide\u002Fdepurar","2.ide\u002F4.depurar","i-lucide-bug",false,{"title":44,"icon":45,"path":46,"stem":47,"children":48,"page":42},"Clases y Objetos","i-catppuccin-java-class","\u002Fclases-objetos","3.clases-objetos",[49,53,57,62,66,70,74,78,83,88,92,96,101,106,110,114],{"title":50,"path":51,"stem":52},"Repaso previo a Clases y Objetos","\u002Fclases-objetos\u002Fpreview","3.clases-objetos\u002F00.preview",{"title":54,"path":55,"stem":56,"icon":45},"¿Qué es la Programación Orientada a Objetos (POO)?","\u002Fclases-objetos\u002Fpoo","3.clases-objetos\u002F01.poo",{"title":58,"path":59,"stem":60,"icon":61},"Diagramas de Clases y Objetos","\u002Fclases-objetos\u002Fdiagramas","3.clases-objetos\u002F02.diagramas","i-devicon-uml",{"title":63,"path":64,"stem":65,"icon":45},"Las Clases","\u002Fclases-objetos\u002Fclases","3.clases-objetos\u002F03.clases",{"title":67,"path":68,"stem":69,"icon":45},"Ámbito y Visibilidad","\u002Fclases-objetos\u002Fambito","3.clases-objetos\u002F04.ambito",{"title":71,"path":72,"stem":73,"icon":45},"Declaración e Instanciación de Objetos","\u002Fclases-objetos\u002Fobjetos","3.clases-objetos\u002F05.objetos",{"title":75,"path":76,"stem":77,"icon":45},"Clases Predefinidas en Java","\u002Fclases-objetos\u002Fpredefinidas","3.clases-objetos\u002F06.predefinidas",{"title":79,"path":80,"stem":81,"icon":82},"Paquetes en Java","\u002Fclases-objetos\u002Fpaquetes","3.clases-objetos\u002F07.paquetes","i-material-icon-theme-folder-java-open",{"title":84,"path":85,"stem":86,"icon":87},"Las Excepciones","\u002Fclases-objetos\u002Fexcepciones","3.clases-objetos\u002F08.excepciones","i-catppuccin-java-exception",{"title":89,"path":90,"stem":91,"icon":45},"La clase JOptionPane","\u002Fclases-objetos\u002Fjoptionpane","3.clases-objetos\u002F09.joptionpane",{"title":93,"path":94,"stem":95,"icon":45},"Constructores y Accesores","\u002Fclases-objetos\u002Fconstructores","3.clases-objetos\u002F10.constructores",{"title":97,"path":98,"stem":99,"icon":100},"Tipos Enumerados (Enums)","\u002Fclases-objetos\u002Fenumerados","3.clases-objetos\u002F11.enumerados","i-catppuccin-java-enum",{"title":102,"path":103,"stem":104,"icon":105},"Modificadores de acceso static y final","\u002Fclases-objetos\u002Fmodificadores","3.clases-objetos\u002F12.modificadores","i-mdi-chart-box",{"title":107,"path":108,"stem":109,"icon":105},"El casting en Java","\u002Fclases-objetos\u002Fcasting","3.clases-objetos\u002F13.casting",{"title":111,"path":112,"stem":113},"Las Expresiones Regulares","\u002Fclases-objetos\u002Fexpresiones-regulares","3.clases-objetos\u002F14.expresiones-regulares",{"title":115,"path":116,"stem":117,"icon":105},"Clases Genéricas en Java","\u002Fclases-objetos\u002Fclases-genericas","3.clases-objetos\u002F15.clases-genericas",{"title":119,"icon":120,"path":121,"stem":122,"children":123,"page":42},"Funciones (Métodos)","i-material-symbols-function","\u002Fmetodos","4.metodos",[124,128,132,136,140,144,148,152,156],{"title":125,"path":126,"stem":127},"Funciones Genéricas","\u002Fmetodos\u002Ffuncion-generica","4.metodos\u002F01.funcion-generica",{"title":129,"path":130,"stem":131},"Métodos de Instancia y de Clase","\u002Fmetodos\u002Finstancia-clase","4.metodos\u002F02.instancia-clase",{"title":133,"path":134,"stem":135},"Sobrecarga de Funciones","\u002Fmetodos\u002Fsobrecarga","4.metodos\u002F03.sobrecarga",{"title":137,"path":138,"stem":139},"Alcance de Variables y Métodos","\u002Fmetodos\u002Falcance","4.metodos\u002F04.alcance",{"title":141,"path":142,"stem":143},"Recursividad","\u002Fmetodos\u002Frecursividad","4.metodos\u002F05.recursividad",{"title":145,"path":146,"stem":147},"Puntero this","\u002Fmetodos\u002Fthis","4.metodos\u002F06.this",{"title":149,"path":150,"stem":151},"Los argumentos variables (varargs)","\u002Fmetodos\u002Fvarargs","4.metodos\u002F07.varargs",{"title":153,"path":154,"stem":155},"La clase Arrays","\u002Fmetodos\u002Farrays","4.metodos\u002F08.arrays",{"title":157,"path":158,"stem":159},"Predicados Simples y Compuestos en Java","\u002Fmetodos\u002Fpredicados","4.metodos\u002F09.predicados",{"title":161,"path":162,"stem":163,"children":164,"icon":199},"Herencia","\u002Fherencia","5.herencia\u002F01.index",[165,167,171,175,179,183,187,191,195],{"title":166,"path":162,"stem":163},"¿Qué es la herencia?",{"title":168,"path":169,"stem":170},"Sobreescritura de métodos y uso de `super`","\u002Fherencia\u002Fsobeescritura","5.herencia\u002F02.sobeescritura",{"title":172,"path":173,"stem":174},"Tipos de herencia","\u002Fherencia\u002Ftipos-herencia","5.herencia\u002F03.tipos-herencia",{"title":176,"path":177,"stem":178},"La clase Object en Java","\u002Fherencia\u002Fobject","5.herencia\u002F04.object",{"title":180,"path":181,"stem":182},"Polimorfismo","\u002Fherencia\u002Fpolimorfismo","5.herencia\u002F05.polimorfismo",{"title":184,"path":185,"stem":186},"Clases y Funciones Abstractas","\u002Fherencia\u002Fabstract","5.herencia\u002F06.abstract",{"title":188,"path":189,"stem":190},"Interfaces","\u002Fherencia\u002Finterfaces","5.herencia\u002F07.interfaces",{"title":192,"path":193,"stem":194},"Funciones e Interfaces","\u002Fherencia\u002Ffunciones-interfaces","5.herencia\u002F08.funciones-interfaces",{"title":196,"path":197,"stem":198},"Interfaces y Funciones Lambda","\u002Fherencia\u002Flambda-interface","5.herencia\u002F09.lambda-interface","i-material-symbols-heritage",{"title":201,"path":202,"stem":203,"children":204,"icon":199},"Arreglos","\u002Farreglos","6.arreglos\u002F01.index",[205,207,211,215,219,223,227],{"title":206,"path":202,"stem":203},"Los arreglos en Java",{"title":208,"path":209,"stem":210},"Los arreglos","\u002Farreglos\u002Farray","6.arreglos\u002F02.array",{"title":212,"path":213,"stem":214},"Matrices","\u002Farreglos\u002Fmatrices","6.arreglos\u002F03.matrices",{"title":216,"path":217,"stem":218},"Comparadores","\u002Farreglos\u002Fcomparator","6.arreglos\u002F04.comparator",{"title":220,"path":221,"stem":222},"Arreglos dinámicos: ArrayList","\u002Farreglos\u002Farraylist","6.arreglos\u002F05.arraylist",{"title":224,"path":225,"stem":226},"Arreglos Relacionales: HashMap","\u002Farreglos\u002Fhashmap","6.arreglos\u002F06.hashmap",{"title":228,"path":229,"stem":230},"La clase Stream en Java","\u002Farreglos\u002Fstream","6.arreglos\u002F07.stream",{"title":232,"icon":199,"path":233,"stem":234,"children":235,"page":42},"Archivos e Interfaz de Usuario","\u002Farchivos-ui","7.archivos-ui",[236,240,244,248,252,256,260,264,268,272,276,280,284,288,292,296,300,304,308,312,316],{"title":237,"path":238,"stem":239},"El paquete Swing","\u002Farchivos-ui\u002Fswing","7.archivos-ui\u002F01.swing",{"title":241,"path":242,"stem":243},"La clase JFrame y el JPanel","\u002Farchivos-ui\u002Fjpanel","7.archivos-ui\u002F02.jpanel",{"title":245,"path":246,"stem":247},"Los Layouts en Swing","\u002Farchivos-ui\u002Flayout","7.archivos-ui\u002F03.layout",{"title":249,"path":250,"stem":251},"Iniciando con Swing","\u002Farchivos-ui\u002Finiciando","7.archivos-ui\u002F04.iniciando",{"title":253,"path":254,"stem":255},"Las clases Color y Font en Swing","\u002Farchivos-ui\u002Fcolor-font","7.archivos-ui\u002F05.color-font",{"title":257,"path":258,"stem":259},"Etiquetas en Swing","\u002Farchivos-ui\u002Fetiquetas","7.archivos-ui\u002F06.etiquetas",{"title":261,"path":262,"stem":263},"Personalizando la apariencia de los componentes en Swing","\u002Farchivos-ui\u002Fpersonalizando","7.archivos-ui\u002F07.personalizando",{"title":265,"path":266,"stem":267},"Sobrescribiendo el método drawComponent() en Swing","\u002Farchivos-ui\u002Fdraw","7.archivos-ui\u002F08.draw",{"title":269,"path":270,"stem":271},"Manejando eventos en Swing","\u002Farchivos-ui\u002Feventos","7.archivos-ui\u002F09.eventos",{"title":273,"path":274,"stem":275},"Personalización de Componentes mediante la Extensión de Clases en Swing","\u002Farchivos-ui\u002Fextends-component","7.archivos-ui\u002F10.extends-component",{"title":277,"path":278,"stem":279},"Gradientes","\u002Farchivos-ui\u002Fgradientes","7.archivos-ui\u002F11.gradientes",{"title":281,"path":282,"stem":283},"Botones en Swing","\u002Farchivos-ui\u002Fbotones","7.archivos-ui\u002F12.botones",{"title":285,"path":286,"stem":287},"Los delegadores en Swing","\u002Farchivos-ui\u002Fdelegadores","7.archivos-ui\u002F13.delegadores",{"title":289,"path":290,"stem":291},"UI para nuestro RPG: Parte 1","\u002Farchivos-ui\u002Frpg-ui-1","7.archivos-ui\u002F14.rpg-ui-1",{"title":293,"path":294,"stem":295},"UI para nuestro RPG: Parte 2","\u002Farchivos-ui\u002Frpg-ui-2","7.archivos-ui\u002F15.rpg-ui-2",{"title":297,"path":298,"stem":299},"Los Streams Entrada y Salida","\u002Farchivos-ui\u002Fstreams","7.archivos-ui\u002F16.streams",{"title":301,"path":302,"stem":303},"Archivo tipo Objeto","\u002Farchivos-ui\u002Farchivo-objeto","7.archivos-ui\u002F17.archivo-objeto",{"title":305,"path":306,"stem":307},"UI para nuestro RPG: Parte 3","\u002Farchivos-ui\u002Frpg-ui-3","7.archivos-ui\u002F18.rpg-ui-3",{"title":309,"path":310,"stem":311},"UI para nuestro RPG: Parte 4","\u002Farchivos-ui\u002Frpg-ui-4","7.archivos-ui\u002F19.rpg-ui-4",{"title":313,"path":314,"stem":315},"UI para nuestro RPG: Parte 5","\u002Farchivos-ui\u002Frpg-ui-5","7.archivos-ui\u002F20.rpg-ui-5",{"title":317,"path":318,"stem":319},"UI para nuestro RPG: Parte 6","\u002Farchivos-ui\u002Frpg-ui-6","7.archivos-ui\u002F21.rpg-ui-6",{"title":321,"icon":322,"path":323,"stem":324,"children":325,"page":42},"Ejemplos","i-check-circle","\u002Fejemplos","8.ejemplos",[326,330,334,338,342],{"title":327,"path":328,"stem":329,"icon":105},"Ejemplo 1: Validando entradas con JOptionPane","\u002Fejemplos\u002Fejemplo-01","8.ejemplos\u002F01.ejemplo-01",{"title":331,"path":332,"stem":333},"Ejemplo 02: Uso de clases genéricas en Java","\u002Fejemplos\u002Fejemplo-02","8.ejemplos\u002F02.ejemplo-02",{"title":335,"path":336,"stem":337},"Ejemplo 03: Uso de Enum, Excepciones en Java","\u002Fejemplos\u002Fejemplo-03","8.ejemplos\u002F03.ejemplo-03",{"title":339,"path":340,"stem":341},"Ejemplo 4: Clase con funciones genéricas de validación","\u002Fejemplos\u002Fejemplo-04","8.ejemplos\u002F04.ejemplo-04",{"title":343,"path":344,"stem":345},"Ejemplo 5: Sistema de Gestión de Empleados","\u002Fejemplos\u002Fejemplo-05","8.ejemplos\u002F05.ejemplo-05",{"title":347,"icon":322,"path":348,"stem":349,"children":350,"page":42},"Actividades","\u002Factividades","9.actividades",[351,355,360,364,368,372,376,380,384,388,392,396,400,404,408],{"title":352,"path":353,"stem":354,"icon":105},"Actividad 1: Infografía sobre el proceso de compilación","\u002Factividades\u002Fact-01","9.actividades\u002F01.act-01",{"title":356,"path":357,"stem":358,"icon":359},"Actividad 2: Modelando Diagramas de Clases UML","\u002Factividades\u002Fact-02","9.actividades\u002F02.act-02","i-material-icon-theme-uml",{"title":361,"path":362,"stem":363,"icon":45},"Actividad 3: Creando Clases y Objetos en Java","\u002Factividades\u002Fact-03","9.actividades\u002F03.act-03",{"title":365,"path":366,"stem":367},"Actividad 4: Validando entradas de datos","\u002Factividades\u002Fact-04","9.actividades\u002F04.act-04",{"title":369,"path":370,"stem":371,"icon":105},"Actividad 5: Implementando una clase genérica","\u002Factividades\u002Fact-05","9.actividades\u002F05.act-05",{"title":373,"path":374,"stem":375,"icon":105},"Actividad 6: Expandiendo InputValidator con Predicados y Function","\u002Factividades\u002Fact-06","9.actividades\u002F06.act-06",{"title":377,"path":378,"stem":379,"icon":105},"Actividad 7: Gestor de Biblioteca con InputValidator","\u002Factividades\u002Fact-07","9.actividades\u002F07.act-07",{"title":381,"path":382,"stem":383,"icon":105},"Actividad 8: Calculadora de Figuras Geométricas","\u002Factividades\u002Fact-08","9.actividades\u002F08.act-08",{"title":385,"path":386,"stem":387,"icon":105},"Actividad 9: gestión de una empresa agroalimentaria","\u002Factividades\u002Fact-09","9.actividades\u002F09.act-09",{"title":389,"path":390,"stem":391,"icon":105},"Actividad 10: Sistema de gestión de clínicas veterinarias","\u002Factividades\u002Fact-10","9.actividades\u002F10.act-10",{"title":393,"path":394,"stem":395},"Definición de Proyecto Evolutivo","\u002Factividades\u002Frpg","9.actividades\u002F11.rpg",{"title":397,"path":398,"stem":399},"Actividad 11: Creación de Personajes","\u002Factividades\u002Fact-11","9.actividades\u002F12.act-11",{"title":401,"path":402,"stem":403},"Actividad 12: El Inventario y los Objetos","\u002Factividades\u002Fact-12","9.actividades\u002F13.act-12",{"title":405,"path":406,"stem":407},"Actividad 13: El combate por turnos","\u002Factividades\u002Fact-13","9.actividades\u002F14.act-13",{"title":409,"path":410,"stem":411},"Actividad 14: Guardando y Cargando","\u002Factividades\u002Fact-14","9.actividades\u002F15.act-14",{"id":413,"title":89,"body":414,"description":1601,"extension":1602,"links":1603,"meta":1604,"navigation":1605,"path":90,"seo":1606,"stem":91,"__hash__":1607},"docs\u002F3.clases-objetos\u002F09.joptionpane.md",{"type":415,"value":416,"toc":1585},"minimark",[417,430,435,441,463,467,474,504,509,525,528,635,639,645,699,723,892,896,901,992,996,1002,1097,1101,1106,1209,1213,1225,1283,1290,1299,1304,1437,1447,1572,1576,1581],[418,419,420,421,425,426,429],"p",{},"Dentro de la programación en Java, la clase ",[422,423,424],"code",{},"JOptionPane"," es una herramienta muy útil para mostrar diálogos gráficos y obtener entradas del usuario de manera sencilla. Esta clase forma parte del paquete ",[422,427,428],{},"javax.swing"," y proporciona métodos estáticos para crear diferentes tipos de diálogos, como mensajes de información, advertencias, errores, confirmaciones y solicitudes de entrada.",[431,432,434],"h2",{"id":433},"importar-la-clase-joptionpane","Importar la clase JOptionPane",[418,436,437,438,440],{},"Para utilizar la clase ",[422,439,424],{},", primero debes importarla en tu programa:",[442,443,448],"pre",{"className":444,"code":445,"language":446,"meta":447,"style":447},"language-java shiki shiki-themes github-dark","import javax.swing.JOptionPane;\n","java","",[422,449,450],{"__ignoreMap":447},[451,452,455,459],"span",{"class":453,"line":454},"line",1,[451,456,458],{"class":457},"snl16","import",[451,460,462],{"class":461},"s95oV"," javax.swing.JOptionPane;\n",[431,464,466],{"id":465},"mostrar-un-mensaje","Mostrar un mensaje",[418,468,469,470,473],{},"Puedes mostrar un mensaje simple utilizando el método ",[422,471,472],{},"showMessageDialog",":",[442,475,477],{"className":444,"code":476,"language":446,"meta":447,"style":447},"JOptionPane.showMessageDialog(null, \"¡Hola, mundo!\");\n",[422,478,479],{"__ignoreMap":447},[451,480,481,484,487,490,494,497,501],{"class":453,"line":454},[451,482,483],{"class":461},"JOptionPane.",[451,485,472],{"class":486},"svObZ",[451,488,489],{"class":461},"(",[451,491,493],{"class":492},"sDLfK","null",[451,495,496],{"class":461},", ",[451,498,500],{"class":499},"sU2Wk","\"¡Hola, mundo!\"",[451,502,503],{"class":461},");\n",[505,506,508],"h3",{"id":507},"variantes-de-showmessagedialog","Variantes de showMessageDialog",[418,510,511,512,514,515,496,518,496,521,524],{},"El método ",[422,513,472],{}," tiene varias variantes que te permiten personalizar el tipo de mensaje que deseas mostrar. Por ejemplo, puedes especificar el tipo de mensaje utilizando constantes como ",[422,516,517],{},"JOptionPane.INFORMATION_MESSAGE",[422,519,520],{},"JOptionPane.WARNING_MESSAGE",[422,522,523],{},"JOptionPane.ERROR_MESSAGE",", entre otros.",[418,526,527],{},"Veamos cada una de estas variantes:",[442,529,531],{"className":444,"code":530,"language":446,"meta":447,"style":447},"\u002F\u002F Mensaje de información\nJOptionPane.showMessageDialog(null, \"Este es un mensaje de información.\", \"Información\", JOptionPane.INFORMATION_MESSAGE);\n\n\u002F\u002F Mensaje de advertencia\nJOptionPane.showMessageDialog(null, \"Este es un mensaje de advertencia.\", \"Advertencia\", JOptionPane.WARNING_MESSAGE);\n\n\u002F\u002F Mensaje de error\nJOptionPane.showMessageDialog(null, \"Este es un mensaje de error.\", \"Error\", JOptionPane.ERROR_MESSAGE);\n",[422,532,533,539,563,570,576,600,605,611],{"__ignoreMap":447},[451,534,535],{"class":453,"line":454},[451,536,538],{"class":537},"sAwPA","\u002F\u002F Mensaje de información\n",[451,540,542,544,546,548,550,552,555,557,560],{"class":453,"line":541},2,[451,543,483],{"class":461},[451,545,472],{"class":486},[451,547,489],{"class":461},[451,549,493],{"class":492},[451,551,496],{"class":461},[451,553,554],{"class":499},"\"Este es un mensaje de información.\"",[451,556,496],{"class":461},[451,558,559],{"class":499},"\"Información\"",[451,561,562],{"class":461},", JOptionPane.INFORMATION_MESSAGE);\n",[451,564,566],{"class":453,"line":565},3,[451,567,569],{"emptyLinePlaceholder":568},true,"\n",[451,571,573],{"class":453,"line":572},4,[451,574,575],{"class":537},"\u002F\u002F Mensaje de advertencia\n",[451,577,579,581,583,585,587,589,592,594,597],{"class":453,"line":578},5,[451,580,483],{"class":461},[451,582,472],{"class":486},[451,584,489],{"class":461},[451,586,493],{"class":492},[451,588,496],{"class":461},[451,590,591],{"class":499},"\"Este es un mensaje de advertencia.\"",[451,593,496],{"class":461},[451,595,596],{"class":499},"\"Advertencia\"",[451,598,599],{"class":461},", JOptionPane.WARNING_MESSAGE);\n",[451,601,603],{"class":453,"line":602},6,[451,604,569],{"emptyLinePlaceholder":568},[451,606,608],{"class":453,"line":607},7,[451,609,610],{"class":537},"\u002F\u002F Mensaje de error\n",[451,612,614,616,618,620,622,624,627,629,632],{"class":453,"line":613},8,[451,615,483],{"class":461},[451,617,472],{"class":486},[451,619,489],{"class":461},[451,621,493],{"class":492},[451,623,496],{"class":461},[451,625,626],{"class":499},"\"Este es un mensaje de error.\"",[451,628,496],{"class":461},[451,630,631],{"class":499},"\"Error\"",[451,633,634],{"class":461},", JOptionPane.ERROR_MESSAGE);\n",[431,636,638],{"id":637},"solicitar-una-entrada","Solicitar una entrada",[418,640,641,642,473],{},"Si deseas solicitar una entrada del usuario, puedes usar el método ",[422,643,644],{},"showInputDialog",[442,646,648],{"className":444,"code":647,"language":446,"meta":447,"style":447},"String nombre = JOptionPane.showInputDialog(\"¿Cuál es tu nombre?\");\nJOptionPane.showMessageDialog(null, \"¡Hola, \" + nombre + \"!\");\n",[422,649,650,670],{"__ignoreMap":447},[451,651,652,655,658,661,663,665,668],{"class":453,"line":454},[451,653,654],{"class":461},"String nombre ",[451,656,657],{"class":457},"=",[451,659,660],{"class":461}," JOptionPane.",[451,662,644],{"class":486},[451,664,489],{"class":461},[451,666,667],{"class":499},"\"¿Cuál es tu nombre?\"",[451,669,503],{"class":461},[451,671,672,674,676,678,680,682,685,688,691,694,697],{"class":453,"line":541},[451,673,483],{"class":461},[451,675,472],{"class":486},[451,677,489],{"class":461},[451,679,493],{"class":492},[451,681,496],{"class":461},[451,683,684],{"class":499},"\"¡Hola, \"",[451,686,687],{"class":457}," +",[451,689,690],{"class":461}," nombre ",[451,692,693],{"class":457},"+",[451,695,696],{"class":499}," \"!\"",[451,698,503],{"class":461},[418,700,701,702,704,705,708,709,712,713,716,717,719,720,722],{},"Sin embargo, ten en cuenta que el método ",[422,703,644],{}," devuelve un valor de tipo ",[422,706,707],{},"String",", por lo que si necesitas obtener un número, deberás convertirlo utilizando métodos como ",[422,710,711],{},"Integer.parseInt"," o ",[422,714,715],{},"Double.parseDouble",". Así mismo, la función ",[422,718,644],{}," puede devolver ",[422,721,493],{}," si el usuario cancela la entrada, por lo que es importante manejar este caso para evitar errores en tu programa.",[442,724,726],{"className":444,"code":725,"language":446,"meta":447,"style":447},"String edadStr = JOptionPane.showInputDialog(\"¿Cuál es tu edad?\");\nif (edadStr != null) {\n    try {\n        int edad = Integer.parseInt(edadStr);\n        JOptionPane.showMessageDialog(null, \"Tienes \" + edad + \" años.\");\n    } catch (NumberFormatException e) {\n        JOptionPane.showMessageDialog(null, \"Por favor, ingresa un número válido.\");\n    }\n} else {\n    JOptionPane.showMessageDialog(null, \"Entrada cancelada.\");\n}\n",[422,727,728,746,763,771,790,817,834,851,856,867,886],{"__ignoreMap":447},[451,729,730,733,735,737,739,741,744],{"class":453,"line":454},[451,731,732],{"class":461},"String edadStr ",[451,734,657],{"class":457},[451,736,660],{"class":461},[451,738,644],{"class":486},[451,740,489],{"class":461},[451,742,743],{"class":499},"\"¿Cuál es tu edad?\"",[451,745,503],{"class":461},[451,747,748,751,754,757,760],{"class":453,"line":541},[451,749,750],{"class":457},"if",[451,752,753],{"class":461}," (edadStr ",[451,755,756],{"class":457},"!=",[451,758,759],{"class":492}," null",[451,761,762],{"class":461},") {\n",[451,764,765,768],{"class":453,"line":565},[451,766,767],{"class":457},"    try",[451,769,770],{"class":461}," {\n",[451,772,773,776,779,781,784,787],{"class":453,"line":572},[451,774,775],{"class":457},"        int",[451,777,778],{"class":461}," edad ",[451,780,657],{"class":457},[451,782,783],{"class":461}," Integer.",[451,785,786],{"class":486},"parseInt",[451,788,789],{"class":461},"(edadStr);\n",[451,791,792,795,797,799,801,803,806,808,810,812,815],{"class":453,"line":578},[451,793,794],{"class":461},"        JOptionPane.",[451,796,472],{"class":486},[451,798,489],{"class":461},[451,800,493],{"class":492},[451,802,496],{"class":461},[451,804,805],{"class":499},"\"Tienes \"",[451,807,687],{"class":457},[451,809,778],{"class":461},[451,811,693],{"class":457},[451,813,814],{"class":499}," \" años.\"",[451,816,503],{"class":461},[451,818,819,822,825,828,832],{"class":453,"line":602},[451,820,821],{"class":461},"    } ",[451,823,824],{"class":457},"catch",[451,826,827],{"class":461}," (NumberFormatException ",[451,829,831],{"class":830},"s9osk","e",[451,833,762],{"class":461},[451,835,836,838,840,842,844,846,849],{"class":453,"line":607},[451,837,794],{"class":461},[451,839,472],{"class":486},[451,841,489],{"class":461},[451,843,493],{"class":492},[451,845,496],{"class":461},[451,847,848],{"class":499},"\"Por favor, ingresa un número válido.\"",[451,850,503],{"class":461},[451,852,853],{"class":453,"line":613},[451,854,855],{"class":461},"    }\n",[451,857,859,862,865],{"class":453,"line":858},9,[451,860,861],{"class":461},"} ",[451,863,864],{"class":457},"else",[451,866,770],{"class":461},[451,868,870,873,875,877,879,881,884],{"class":453,"line":869},10,[451,871,872],{"class":461},"    JOptionPane.",[451,874,472],{"class":486},[451,876,489],{"class":461},[451,878,493],{"class":492},[451,880,496],{"class":461},[451,882,883],{"class":499},"\"Entrada cancelada.\"",[451,885,503],{"class":461},[451,887,889],{"class":453,"line":888},11,[451,890,891],{"class":461},"}\n",[505,893,895],{"id":894},"variantes-de-showinputdialog","Variantes de showInputDialog",[418,897,511,898,900],{},[422,899,644],{}," también tiene variantes que te permiten personalizar el mensaje y el título del diálogo, así como el tipo de mensaje que deseas mostrar. En general esta función tiene 6 que se diferencian por la cantidad de parámetros que reciben, veamos ahora algunas de estas variantes:",[442,902,904],{"className":444,"code":903,"language":446,"meta":447,"style":447},"\u002F\u002F Solicitar una entrada con un mensaje personalizado\nString nombre = JOptionPane.showInputDialog(\"¿Cuál es tu nombre?\");\n\n\u002F\u002F Solicitar una entrada con un valor inicial\nString nombre = JOptionPane.showInputDialog(\"¿Cuál es tu nombre?\", \"Juan\");\n\n\u002F\u002F Solicitar una entrada con un mensaje personalizado y un título\nString nombre = JOptionPane.showInputDialog(null, \"¿Cuál es tu nombre?\", \"Entrada de usuario\", JOptionPane.QUESTION_MESSAGE);\n",[422,905,906,911,927,931,936,957,961,966],{"__ignoreMap":447},[451,907,908],{"class":453,"line":454},[451,909,910],{"class":537},"\u002F\u002F Solicitar una entrada con un mensaje personalizado\n",[451,912,913,915,917,919,921,923,925],{"class":453,"line":541},[451,914,654],{"class":461},[451,916,657],{"class":457},[451,918,660],{"class":461},[451,920,644],{"class":486},[451,922,489],{"class":461},[451,924,667],{"class":499},[451,926,503],{"class":461},[451,928,929],{"class":453,"line":565},[451,930,569],{"emptyLinePlaceholder":568},[451,932,933],{"class":453,"line":572},[451,934,935],{"class":537},"\u002F\u002F Solicitar una entrada con un valor inicial\n",[451,937,938,940,942,944,946,948,950,952,955],{"class":453,"line":578},[451,939,654],{"class":461},[451,941,657],{"class":457},[451,943,660],{"class":461},[451,945,644],{"class":486},[451,947,489],{"class":461},[451,949,667],{"class":499},[451,951,496],{"class":461},[451,953,954],{"class":499},"\"Juan\"",[451,956,503],{"class":461},[451,958,959],{"class":453,"line":602},[451,960,569],{"emptyLinePlaceholder":568},[451,962,963],{"class":453,"line":607},[451,964,965],{"class":537},"\u002F\u002F Solicitar una entrada con un mensaje personalizado y un título\n",[451,967,968,970,972,974,976,978,980,982,984,986,989],{"class":453,"line":613},[451,969,654],{"class":461},[451,971,657],{"class":457},[451,973,660],{"class":461},[451,975,644],{"class":486},[451,977,489],{"class":461},[451,979,493],{"class":492},[451,981,496],{"class":461},[451,983,667],{"class":499},[451,985,496],{"class":461},[451,987,988],{"class":499},"\"Entrada de usuario\"",[451,990,991],{"class":461},", JOptionPane.QUESTION_MESSAGE);\n",[431,993,995],{"id":994},"confirmar-una-acción","Confirmar una acción",[418,997,998,999,473],{},"Si deseas confirmar una acción antes de ejecutarla, puedes usar el método ",[422,1000,1001],{},"showConfirmDialog",[442,1003,1005],{"className":444,"code":1004,"language":446,"meta":447,"style":447},"int respuesta = JOptionPane.showConfirmDialog(null, \"¿Estás seguro de que deseas continuar?\", \"Confirmación\", JOptionPane.YES_NO_OPTION);\nif (respuesta == JOptionPane.YES_OPTION) {\n    JOptionPane.showMessageDialog(null, \"Has elegido continuar.\");\n} else {\n    JOptionPane.showMessageDialog(null, \"Has elegido cancelar.\");\n}\n",[422,1006,1007,1038,1051,1068,1076,1093],{"__ignoreMap":447},[451,1008,1009,1012,1015,1017,1019,1021,1023,1025,1027,1030,1032,1035],{"class":453,"line":454},[451,1010,1011],{"class":457},"int",[451,1013,1014],{"class":461}," respuesta ",[451,1016,657],{"class":457},[451,1018,660],{"class":461},[451,1020,1001],{"class":486},[451,1022,489],{"class":461},[451,1024,493],{"class":492},[451,1026,496],{"class":461},[451,1028,1029],{"class":499},"\"¿Estás seguro de que deseas continuar?\"",[451,1031,496],{"class":461},[451,1033,1034],{"class":499},"\"Confirmación\"",[451,1036,1037],{"class":461},", JOptionPane.YES_NO_OPTION);\n",[451,1039,1040,1042,1045,1048],{"class":453,"line":541},[451,1041,750],{"class":457},[451,1043,1044],{"class":461}," (respuesta ",[451,1046,1047],{"class":457},"==",[451,1049,1050],{"class":461}," JOptionPane.YES_OPTION) {\n",[451,1052,1053,1055,1057,1059,1061,1063,1066],{"class":453,"line":565},[451,1054,872],{"class":461},[451,1056,472],{"class":486},[451,1058,489],{"class":461},[451,1060,493],{"class":492},[451,1062,496],{"class":461},[451,1064,1065],{"class":499},"\"Has elegido continuar.\"",[451,1067,503],{"class":461},[451,1069,1070,1072,1074],{"class":453,"line":572},[451,1071,861],{"class":461},[451,1073,864],{"class":457},[451,1075,770],{"class":461},[451,1077,1078,1080,1082,1084,1086,1088,1091],{"class":453,"line":578},[451,1079,872],{"class":461},[451,1081,472],{"class":486},[451,1083,489],{"class":461},[451,1085,493],{"class":492},[451,1087,496],{"class":461},[451,1089,1090],{"class":499},"\"Has elegido cancelar.\"",[451,1092,503],{"class":461},[451,1094,1095],{"class":453,"line":602},[451,1096,891],{"class":461},[505,1098,1100],{"id":1099},"variantes-de-showconfirmdialog","Variantes de showConfirmDialog",[418,1102,511,1103,1105],{},[422,1104,1001],{}," también tiene variantes que te permiten personalizar el mensaje, el título y el tipo de mensaje que deseas mostrar. En general esta función tiene 6 variantes que se diferencian por la cantidad de parámetros que reciben, veamos ahora algunas de estas variantes:",[442,1107,1109],{"className":444,"code":1108,"language":446,"meta":447,"style":447},"\u002F\u002F Confirmar una acción con un mensaje personalizado\nint respuesta = JOptionPane.showConfirmDialog(null, \"¿Estás seguro de que deseas continuar?\");\n\n\u002F\u002F Confirmar una acción con un mensaje personalizado y un título\nint respuesta = JOptionPane.showConfirmDialog(null, \"¿Estás seguro de que deseas continuar?\", \"Confirmación\", JOptionPane.YES_NO_OPTION);\n\n\u002F\u002F Confirmar una acción con un mensaje personalizado, un título y un tipo de mensaje\nint respuesta = JOptionPane.showConfirmDialog(null, \"¿Estás seguro de que deseas continuar?\", \"Confirmación\", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);\n",[422,1110,1111,1116,1138,1142,1147,1173,1177,1182],{"__ignoreMap":447},[451,1112,1113],{"class":453,"line":454},[451,1114,1115],{"class":537},"\u002F\u002F Confirmar una acción con un mensaje personalizado\n",[451,1117,1118,1120,1122,1124,1126,1128,1130,1132,1134,1136],{"class":453,"line":541},[451,1119,1011],{"class":457},[451,1121,1014],{"class":461},[451,1123,657],{"class":457},[451,1125,660],{"class":461},[451,1127,1001],{"class":486},[451,1129,489],{"class":461},[451,1131,493],{"class":492},[451,1133,496],{"class":461},[451,1135,1029],{"class":499},[451,1137,503],{"class":461},[451,1139,1140],{"class":453,"line":565},[451,1141,569],{"emptyLinePlaceholder":568},[451,1143,1144],{"class":453,"line":572},[451,1145,1146],{"class":537},"\u002F\u002F Confirmar una acción con un mensaje personalizado y un título\n",[451,1148,1149,1151,1153,1155,1157,1159,1161,1163,1165,1167,1169,1171],{"class":453,"line":578},[451,1150,1011],{"class":457},[451,1152,1014],{"class":461},[451,1154,657],{"class":457},[451,1156,660],{"class":461},[451,1158,1001],{"class":486},[451,1160,489],{"class":461},[451,1162,493],{"class":492},[451,1164,496],{"class":461},[451,1166,1029],{"class":499},[451,1168,496],{"class":461},[451,1170,1034],{"class":499},[451,1172,1037],{"class":461},[451,1174,1175],{"class":453,"line":602},[451,1176,569],{"emptyLinePlaceholder":568},[451,1178,1179],{"class":453,"line":607},[451,1180,1181],{"class":537},"\u002F\u002F Confirmar una acción con un mensaje personalizado, un título y un tipo de mensaje\n",[451,1183,1184,1186,1188,1190,1192,1194,1196,1198,1200,1202,1204,1206],{"class":453,"line":613},[451,1185,1011],{"class":457},[451,1187,1014],{"class":461},[451,1189,657],{"class":457},[451,1191,660],{"class":461},[451,1193,1001],{"class":486},[451,1195,489],{"class":461},[451,1197,493],{"class":492},[451,1199,496],{"class":461},[451,1201,1029],{"class":499},[451,1203,496],{"class":461},[451,1205,1034],{"class":499},[451,1207,1208],{"class":461},", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);\n",[505,1210,1212],{"id":1211},"tipo-de-opciones-en-showconfirmdialog","Tipo de Opciones en showConfirmDialog",[418,1214,511,1215,1217,1218,496,1221,1224],{},[422,1216,1001],{}," permite especificar el tipo de opciones que deseas mostrar al usuario utilizando constantes como ",[422,1219,1220],{},"JOptionPane.YES_NO_OPTION",[422,1222,1223],{},"JOptionPane.YES_NO_CANCEL_OPTION",", entre otros. Estas constantes determinan qué botones se mostrarán en el diálogo de confirmación.",[1226,1227,1228,1241],"table",{},[1229,1230,1231],"thead",{},[1232,1233,1234,1238],"tr",{},[1235,1236,1237],"th",{},"Constante",[1235,1239,1240],{},"Descripción",[1242,1243,1244,1254,1263,1273],"tbody",{},[1232,1245,1246,1251],{},[1247,1248,1249],"td",{},[422,1250,1220],{},[1247,1252,1253],{},"Muestra los botones \"Sí\" y \"No\".",[1232,1255,1256,1260],{},[1247,1257,1258],{},[422,1259,1223],{},[1247,1261,1262],{},"Muestra los botones \"Sí\", \"No\" y \"Cancelar\".",[1232,1264,1265,1270],{},[1247,1266,1267],{},[422,1268,1269],{},"JOptionPane.OK_CANCEL_OPTION",[1247,1271,1272],{},"Muestra los botones \"OK\" y \"Cancelar\".",[1232,1274,1275,1280],{},[1247,1276,1277],{},[422,1278,1279],{},"JOptionPane.DEFAULT_OPTION",[1247,1281,1282],{},"Muestra un solo botón \"OK\".",[431,1284,1286,1287],{"id":1285},"estilizando-los-diálogos-con-uimanager","Estilizando los diálogos con ",[422,1288,1289],{},"UIManager",[418,1291,1292,1293,1295,1296,1298],{},"La clase ",[422,1294,1289],{}," en Java Swing te permite personalizar la apariencia de los componentes de la interfaz gráfica, incluyendo los diálogos creados con ",[422,1297,424],{},". Puedes cambiar el estilo, los colores, las fuentes y otros aspectos visuales de los diálogos para que se adapten a la estética de tu aplicación.",[418,1300,1301,1302,473],{},"Veamos los elementos que puedes personalizar utilizando ",[422,1303,1289],{},[1226,1305,1306,1315],{},[1229,1307,1308],{},[1232,1309,1310,1313],{},[1235,1311,1312],{},"Propiedad",[1235,1314,1240],{},[1242,1316,1317,1327,1337,1347,1357,1367,1377,1387,1397,1407,1417,1427],{},[1232,1318,1319,1324],{},[1247,1320,1321],{},[422,1322,1323],{},"OptionPane.background",[1247,1325,1326],{},"Cambia el color de fondo del diálogo.",[1232,1328,1329,1334],{},[1247,1330,1331],{},[422,1332,1333],{},"OptionPane.messageForeground",[1247,1335,1336],{},"Cambia el color del texto del mensaje.",[1232,1338,1339,1344],{},[1247,1340,1341],{},[422,1342,1343],{},"OptionPane.buttonBackground",[1247,1345,1346],{},"Cambia el color de fondo de los botones.",[1232,1348,1349,1354],{},[1247,1350,1351],{},[422,1352,1353],{},"OptionPane.buttonForeground",[1247,1355,1356],{},"Cambia el color del texto de los botones.",[1232,1358,1359,1364],{},[1247,1360,1361],{},[422,1362,1363],{},"OptionPane.messageFont",[1247,1365,1366],{},"Cambia la fuente del texto del mensaje.",[1232,1368,1369,1374],{},[1247,1370,1371],{},[422,1372,1373],{},"OptionPane.buttonFont",[1247,1375,1376],{},"Cambia la fuente del texto de los botones.",[1232,1378,1379,1384],{},[1247,1380,1381],{},[422,1382,1383],{},"TextField.background",[1247,1385,1386],{},"Cambia el color de fondo de los campos de texto.",[1232,1388,1389,1394],{},[1247,1390,1391],{},[422,1392,1393],{},"TextField.foreground",[1247,1395,1396],{},"Cambia el color del texto de los campos de texto.",[1232,1398,1399,1404],{},[1247,1400,1401],{},[422,1402,1403],{},"TextField.font",[1247,1405,1406],{},"Cambia la fuente del texto de los campos de texto.",[1232,1408,1409,1414],{},[1247,1410,1411],{},[422,1412,1413],{},"ComboBox.background",[1247,1415,1416],{},"Cambia el color de fondo de los cuadros de selección.",[1232,1418,1419,1424],{},[1247,1420,1421],{},[422,1422,1423],{},"ComboBox.foreground",[1247,1425,1426],{},"Cambia el color del texto de los cuadros de selección.",[1232,1428,1429,1434],{},[1247,1430,1431],{},[422,1432,1433],{},"ComboBox.font",[1247,1435,1436],{},"Cambia la fuente del texto de los cuadros de selección.",[418,1438,1439,1440,1443,1444,1446],{},"Recuerda que para aplicar estos cambios, debes usar el método ",[422,1441,1442],{},"UIManager.put"," antes de mostrar el diálogo con ",[422,1445,424],{},". Por ejemplo:",[442,1448,1450],{"className":444,"code":1449,"language":446,"meta":447,"style":447},"UIManager.put(\"OptionPane.background\", Color.LIGHT_GRAY);\nUIManager.put(\"OptionPane.messageForeground\", Color.BLUE);\nUIManager.put(\"OptionPane.buttonBackground\", Color.GRAY);\nUIManager.put(\"OptionPane.buttonForeground\", Color.WHITE);\nUIManager.put(\"OptionPane.messageFont\", new Font(\"Arial\", Font.BOLD, 14));\nUIManager.put(\"OptionPane.buttonFont\", new Font(\"Arial\", Font.PLAIN, 12));\n",[422,1451,1452,1468,1482,1496,1510,1543],{"__ignoreMap":447},[451,1453,1454,1457,1460,1462,1465],{"class":453,"line":454},[451,1455,1456],{"class":461},"UIManager.",[451,1458,1459],{"class":486},"put",[451,1461,489],{"class":461},[451,1463,1464],{"class":499},"\"OptionPane.background\"",[451,1466,1467],{"class":461},", Color.LIGHT_GRAY);\n",[451,1469,1470,1472,1474,1476,1479],{"class":453,"line":541},[451,1471,1456],{"class":461},[451,1473,1459],{"class":486},[451,1475,489],{"class":461},[451,1477,1478],{"class":499},"\"OptionPane.messageForeground\"",[451,1480,1481],{"class":461},", Color.BLUE);\n",[451,1483,1484,1486,1488,1490,1493],{"class":453,"line":565},[451,1485,1456],{"class":461},[451,1487,1459],{"class":486},[451,1489,489],{"class":461},[451,1491,1492],{"class":499},"\"OptionPane.buttonBackground\"",[451,1494,1495],{"class":461},", Color.GRAY);\n",[451,1497,1498,1500,1502,1504,1507],{"class":453,"line":572},[451,1499,1456],{"class":461},[451,1501,1459],{"class":486},[451,1503,489],{"class":461},[451,1505,1506],{"class":499},"\"OptionPane.buttonForeground\"",[451,1508,1509],{"class":461},", Color.WHITE);\n",[451,1511,1512,1514,1516,1518,1521,1523,1526,1529,1531,1534,1537,1540],{"class":453,"line":578},[451,1513,1456],{"class":461},[451,1515,1459],{"class":486},[451,1517,489],{"class":461},[451,1519,1520],{"class":499},"\"OptionPane.messageFont\"",[451,1522,496],{"class":461},[451,1524,1525],{"class":457},"new",[451,1527,1528],{"class":486}," Font",[451,1530,489],{"class":461},[451,1532,1533],{"class":499},"\"Arial\"",[451,1535,1536],{"class":461},", Font.BOLD, ",[451,1538,1539],{"class":492},"14",[451,1541,1542],{"class":461},"));\n",[451,1544,1545,1547,1549,1551,1554,1556,1558,1560,1562,1564,1567,1570],{"class":453,"line":602},[451,1546,1456],{"class":461},[451,1548,1459],{"class":486},[451,1550,489],{"class":461},[451,1552,1553],{"class":499},"\"OptionPane.buttonFont\"",[451,1555,496],{"class":461},[451,1557,1525],{"class":457},[451,1559,1528],{"class":486},[451,1561,489],{"class":461},[451,1563,1533],{"class":499},[451,1565,1566],{"class":461},", Font.PLAIN, ",[451,1568,1569],{"class":492},"12",[451,1571,1542],{"class":461},[431,1573,1575],{"id":1574},"resumen","Resumen",[418,1577,1292,1578,1580],{},[422,1579,424],{}," es una herramienta poderosa para interactuar con el usuario a través de diálogos gráficos en Java. Permite mostrar mensajes de información, advertencias y errores, solicitar entradas del usuario y confirmar acciones de manera sencilla y efectiva. Al utilizar esta clase, puedes mejorar la experiencia del usuario en tus aplicaciones Java y hacer que la interacción sea más amigable y visualmente atractiva.",[1582,1583,1584],"style",{},"html pre.shiki code .snl16, html code.shiki .snl16{--shiki-default:#F97583}html pre.shiki code .s95oV, html code.shiki .s95oV{--shiki-default:#E1E4E8}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html pre.shiki code .svObZ, html code.shiki .svObZ{--shiki-default:#B392F0}html pre.shiki code .sDLfK, html code.shiki .sDLfK{--shiki-default:#79B8FF}html pre.shiki code .sU2Wk, html code.shiki .sU2Wk{--shiki-default:#9ECBFF}html pre.shiki code .sAwPA, html code.shiki .sAwPA{--shiki-default:#6A737D}html pre.shiki code .s9osk, html code.shiki .s9osk{--shiki-default:#FFAB70}",{"title":447,"searchDepth":541,"depth":541,"links":1586},[1587,1588,1591,1594,1598,1600],{"id":433,"depth":541,"text":434},{"id":465,"depth":541,"text":466,"children":1589},[1590],{"id":507,"depth":565,"text":508},{"id":637,"depth":541,"text":638,"children":1592},[1593],{"id":894,"depth":565,"text":895},{"id":994,"depth":541,"text":995,"children":1595},[1596,1597],{"id":1099,"depth":565,"text":1100},{"id":1211,"depth":565,"text":1212},{"id":1285,"depth":541,"text":1599},"Estilizando los diálogos con UIManager",{"id":1574,"depth":541,"text":1575},"Aprendamos sobre la clase JOptionPane en Java, una herramienta útil para mostrar diálogos gráficos y obtener entradas del usuario de manera sencilla.","md",null,{"editButton":42},{"icon":45},{"title":89,"description":1601},"8iBqc91kH5-15Wi82Y7Rlsj9jWGHMK28259_Pe2l5pc",[1609,1611],{"title":84,"path":85,"stem":86,"description":1610,"icon":87,"children":-1},"Entendamos qué son las excepciones en Java, cómo manejarlas y su importancia en la programación.",{"title":93,"path":94,"stem":95,"description":1612,"icon":45,"children":-1},"Aprendamos sobre los constructores y accesores en Java, dos conceptos fundamentales para la creación e inicialización de objetos, así como para el acceso a sus atributos.",1779479565106]