{"id":655,"date":"2024-02-26T23:18:38","date_gmt":"2024-02-26T23:18:38","guid":{"rendered":"https:\/\/javigomez.org\/?p=655"},"modified":"2025-09-29T20:33:34","modified_gmt":"2025-09-29T20:33:34","slug":"u09-04-clases-en-java-ejercicio-formas","status":"publish","type":"post","link":"https:\/\/javigomez.org\/index.php\/2024\/02\/26\/u09-04-clases-en-java-ejercicio-formas\/","title":{"rendered":"U09-04-Clases en Java \u2013 Ejercicio Formas"},"content":{"rendered":"\n<p><strong>Definir una clase Forma.<\/strong><br>Atributo privado: color (string)<br>Constructor: recibe el color como par\u00e1metro<br>El color se modifica a trav\u00e9s de set y get<br><em>M\u00e9todos abstractos:<\/em><br>area()<br>perimetro()<\/p>\n\n\n\n<p><br><strong>Definir una clase Circulo que hereda de Forma<\/strong><br>Atributo privado: radio (int)<br>Constructor: recibe color y radio<\/p>\n\n\n\n<p><br><strong>Definir una clase Cuadrado que hereda de Forma<\/strong><br>Atributo privado: lado1(int)<br>Constructor: recibe color y lado1<\/p>\n\n\n\n<p><br><strong>Definir una clase Rect\u00e1ngulo que hereda de Cuadrado<\/strong><br>Atributo privado: lado2(int)<br>Constructor: recibe color, lado1 y lado2<\/p>\n\n\n\n<p><br><strong>Definir una clase Triangulo que hereda de Forma<\/strong><br>Atributo privado: base(int), altura (int), lado1 (int), lado2(int), lado3(int)<br>Constructor: recibe color, base y altura<br>Constructor: recibe color, lado1, lado2, lado3<br>Constructor: recibe color, base, altura, lado1, lado2, lado3<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>package U2;\n\npublic class E00_00 {\n\n\tpublic static void main(String&#91;] args) {\n\t\t\n\t\tSystem.out.println(\"*** Circulo ***\");\n\t\tCirculo c=new Circulo(\"rojo\",5);\n\t\tSystem.out.println(c.getColor() + \" area:\" + c.area() + \" perimetro: \" + c.perimetro());\n\t\t\n\t\tSystem.out.println(\"*** Cuadrado ***\");\n\t\tCuadrado cua=new Cuadrado(\"rojo\",5);\n\t\tSystem.out.println(cua.getColor() + \" area:\" + cua.area() + \" perimetro: \" + cua.perimetro());\n\t\n\t\tSystem.out.println(\"*** Rectangulo ***\");\n\t\tCuadrado r=new Rectangulo(\"rojo\",5,4);\n\t\tSystem.out.println(r.getColor() + \" area:\" + r.area() + \" perimetro: \" + r.perimetro());\n\t\t\n\t\tSystem.out.println(\"*** Triangulo ***\");\n\t\tTriangulo t=new Triangulo(\"verde\", 3, 5);\n\t\tSystem.out.println(t.getColor() + \" area:\" + t.area() + \" perimetro: \" + t.perimetro());\n\t\t\n\t\tSystem.out.println(\"*** Triangulo ***\");\n\t\tTriangulo t1=new Triangulo(\"verde\", 5, 5,5);\n\t\tSystem.out.println(t1.getColor() + \" area:\" + t1.area() + \" perimetro: \" + t1.perimetro());\n\t\t\n\t\tSystem.out.println(\"*** Triangulo ***\");\n\t\tTriangulo t2=new Triangulo(\"verde\", 3,5, 5, 5,5);\n\t\tSystem.out.println(t2.getColor() + \" area:\" + t2.area() + \" perimetro: \" + t2.perimetro());\n\n\t}\n}\n\nabstract class Forma{\n\tprivate String color;\n\tForma(String c){\n\t\tthis.setColor(c);\n\t}\n\tpublic String getColor() {\n\t\treturn color;\n\t}\n\tpublic void setColor(String color) {\n\t\tthis.color = color;\n\t}\n\tabstract double area();\n\tabstract double perimetro();\n}\n\nclass Triangulo extends Forma {\n\tint base;\n\tint altura;\n\tint lado1;\n\tint lado2;\n\tint lado3;\n\t\n\tTriangulo(String c, int b, int a, int l1, int l2, int l3){\n\t\tsuper(c);\n\t\tthis.base=b;\n\t\tthis.altura=a;\n\t\tthis.lado1=l1;\n\t\tthis.lado2=l2;\n\t\tthis.lado3=l3;\n\t}\n\tTriangulo(String c, int b,int a){\n\t\tsuper (c);\n\t\tthis.base=b;\n\t\tthis.altura=a;\n\t}\n\tTriangulo(String c,int l1, int l2, int l3){\n\t\tsuper (c);\n\t\tthis.lado1=l1;\n\t\tthis.lado2=l2;\n\t\tthis.lado3=l3;\n\t}\n\t@Override\n\tdouble area() {\n\t\tdouble ar=(double)(this.base*this.altura)\/2;\n\t\treturn ar;\n\t}\n\t@Override\n\tdouble perimetro() {\n\t\tint per=this.lado1+this.lado2+this.lado3;\n\t\treturn per;\n\t}\n\n}\n\n\nclass Rectangulo extends Cuadrado{\n\tint lado2;\n\tRectangulo(String c, int l1, int l2){\n\t\tsuper(c,l1);\n\t\tthis.lado2=l2;\n\t}\n\tdouble area() {\n\t\treturn super.lado1*lado2;\n\t}\n\tdouble perimetro() {\n\t\treturn super.lado1*2 + lado2*2;\n\t}\n\n}\n\n\nclass Cuadrado extends Forma{\n\tint lado1;\n\tCuadrado(String c, int l){\n\t\tsuper(c);\n\t\tthis.lado1=l;\n\t}\n\t@Override\n\tdouble area() {\n\t\treturn Math.pow(this.lado1,2);\n\t}\n\t@Override\n\tdouble perimetro() {\n\t\treturn 4*this.lado1;\n\t}\n\n}\n\nclass Circulo extends Forma{\n\tprivate double radio;\n\tCirculo (String c, double r){\n\t\tsuper(c);\n\t\tthis.radio=r;\n\t}\n\t@Override\n\tdouble area() {\n\t\treturn Math.PI*Math.pow(this.radio, 2);\n\t}\n\t@Override\n\tdouble perimetro() {\n\t\treturn 2*Math.PI*this.radio;\n\t}\n}\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 U9 04 Clases Ejercicio Formas\" width=\"1200\" height=\"900\" src=\"https:\/\/www.youtube.com\/embed\/XdEAw_lK6cU?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>Definir una clase Forma.Atributo privado: color (string)Constructor: recibe el color como par\u00e1metroEl color se modifica a trav\u00e9s de set y getM\u00e9todos abstractos:area()perimetro() Definir una clase &hellip; <\/p>\n","protected":false},"author":1,"featured_media":656,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[79,126,164,203],"class_list":["post-655","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-java","tag-clases","tag-ejercicio","tag-formas-geometricas","tag-java"],"_links":{"self":[{"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/posts\/655","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=655"}],"version-history":[{"count":1,"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/posts\/655\/revisions"}],"predecessor-version":[{"id":885,"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/posts\/655\/revisions\/885"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/media\/656"}],"wp:attachment":[{"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/media?parent=655"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/categories?post=655"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/javigomez.org\/index.php\/wp-json\/wp\/v2\/tags?post=655"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}