{"id":658,"date":"2024-02-27T19:19:46","date_gmt":"2024-02-27T19:19:46","guid":{"rendered":"https:\/\/javigomez.org\/?p=658"},"modified":"2025-09-29T20:33:34","modified_gmt":"2025-09-29T20:33:34","slug":"u10-01-clases-en-java-interfaces-i","status":"publish","type":"post","link":"https:\/\/javigomez.org\/index.php\/2024\/02\/27\/u10-01-clases-en-java-interfaces-i\/","title":{"rendered":"U10-01-Clases en Java \u2013 Interfaces I"},"content":{"rendered":"\n<p>En Java, las interfaces son un concepto fundamental que define un contrato para un conjunto de funcionalidades que las clases pueden implementar. Act\u00faan como plantillas, especificando los m\u00e9todos que una clase debe proporcionar sin definir sus detalles de implementaci\u00f3n. <\/p>\n\n\n\n<p><strong>Estandarizaci\u00f3n<\/strong>: Imponer uniformidad al especificar qu\u00e9 m\u00e9todos debe tener una clase, asegurando que proporcionen funcionalidades espec\u00edficas. <\/p>\n\n\n\n<p><strong>Abstracci\u00f3n<\/strong>: Ocultar los detalles de implementaci\u00f3n, lo que permite que las clases se centren en su l\u00f3gica espec\u00edfica al mismo tiempo que se adhieren al contrato de la interfaz. <\/p>\n\n\n\n<p><strong>Polimorfismo<\/strong>: Permitir tratar objetos de diferentes clases, siempre que implementen la misma interfaz, de forma uniforme.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>public class E00_00 {\n\n\tpublic static void main(String&#91;] args) {\n\t\t\n\t\tPerro p=new Perro();\n\t\tp.voz();\n\t\tp.nombre=\"Sam\";\n\t\tGato g=new Gato();\n\t\tg.voz();\n\t\tMerluza m=new Merluza();\n\t\tm.nombre=\"pescadito\";\n\t\n\t}\n}\n\ninterface Sonido{\n\tvoid voz();\n}\n\nclass Animal{\n\tString nombre;\n}\n\nclass Perro extends Animal implements Sonido{\n\n\t@Override\n\tpublic void voz() {\n\t\tSystem.out.println(\"guau\");\n\t}\n}\n\nclass Gato extends Animal implements Sonido{\n\n\t@Override\n\tpublic void voz() {\n\t\tSystem.out.println(\"miau\");\n\t}\n}\n\nclass Merluza extends Animal{\n\t\n}<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-4-3 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Java U10 01 Clases Interfaces I\" width=\"1200\" height=\"900\" src=\"https:\/\/www.youtube.com\/embed\/IH3O4u-X3AY?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>En Java, las interfaces son un concepto fundamental que define un contrato para un conjunto de funcionalidades que las clases pueden implementar. Act\u00faan como plantillas, &hellip; <\/p>\n","protected":false},"author":1,"featured_media":659,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[184,201,203,265],"class_list":["post-658","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-java","tag-herencia","tag-interfaces","tag-java","tag-poo"],"_links":{"self":[{"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/posts\/658","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/comments?post=658"}],"version-history":[{"count":1,"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/posts\/658\/revisions"}],"predecessor-version":[{"id":884,"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/posts\/658\/revisions\/884"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/media\/659"}],"wp:attachment":[{"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/media?parent=658"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/categories?post=658"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/tags?post=658"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}