* To change this template, choose Tools | Templates
* and open the template in the editor. */ package figurasgeometricas; /** * * @author Lor2012 */ abstract class FigurasGeometricas{ protected double Area; protected String Figura; protected String Nombre;
public abstract String getFigura(); public abstract String getNombre(); public abstract double Area(); public abstract double getVolumen(); } abstract class Bidimencional extends FigurasGeometricas{
@Override public abstract double Area(); } class Circulo extends Bidimencional{
private double Radio; private String ra = "Circulo";
public Circulo (double ra){
this.Radio = ra; }
@Override public String getNombre(){ return Nombre = ra; } public void setRadio(double ra){
this.Radio = ra; }
@Override public String getFigura(){
return Figura ="Bidimencional"; }
@Override public double Area(){
return Math.PI*Radio*Radio; }
@Override public double getVolumen(){
throw new UnsupportedOperationException("Not supported yet."); } } ///////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////
class Cuadrado extends Bidimencional{ private double Lado; public Cuadrado(double la){ this.Lado = la; } @Override public double Area(){ double ar ; ar = Lado*Lado; return Area = ar; } @Override public String getFigura(){ return Figura = "Bidimencional"; } public String GetNombre(){ return Nombre = "Cuadrado"; }
@Override public double getVolumen() { throw new UnsupportedOperationException("Not supported yet."); } @Override public String getNombre() { throw new UnsupportedOperationException("Not supported yet."); } } ///////////////////////////////////////////////////////////////////
abstract class Tridimencional extends FigurasGeometricas{ protected double Volumen;
@Override abstract public double getVolumen();
@Override public abstract double Area(); } /////////////////////////////////////////////////////////////////////////////// class Esfera extends Tridimencional{ private double r;
public Esfera(double ra){ this.r = ra; } @Override public String getFigura(){ return Figura ="Tridimencional"; } @Override public double Area (){ double a; a =(4 * 3.14)*(r*r); return Area = a; } @Override public double getVolumen() { double v; v = ((4/3)*3.14)*(r*r*r); return Volumen = v; } @Override public String getNombre() { return Nombre = "Esfera"; }
fig[0].Area(); System.out.println("Tipo de figura: "+fig[0].getFigura()+""+fig[0].getN ombre()+"Area: "+fig[0].Area());
fig[1].Area(); System.out.println("Tipo de figura: "+fig[1].getFigura()+""+fig[1].getN ombre()+"Area: "+fig[1].Area());
fig[2].getVolumen(); fig[2].Area(); System.out.println("Tipo de figura: "+fig[2].getFigura()+""+fig[2].getN ombre()+""+"Area: "+fig[2].Area()+""+"Volumen: "+fig[2].getVolumen());
fig[3].getVolumen(); fig[3].Area(); System.out.println("Tipo de figura: "+fig[3].getFigura()+""+fig[3].getN ombre()+""+"Area: "+fig[3].Area()+""+"Volumen: "+fig[3].getVolumen());
} } } public class Circulo extends Figura {
float radio; public Circulo (float pArea, float pPerimetro,float pRadio ){
super(); radio=pRadio; }
public float area(){ return (float) (Math.PI*Math.pow(radio, 2)); }
} Escribe una jerarqua de herencia de clases cuadriltero, trapezoide, paralelogramo, rectngulo y cuadrado. Utilice cuadriltero como clase base de la jerarqua. Crear y utilizar una clase Point para representar los puntos en cada forma. H n profundo (es decir, como muchos niveles) como sea posible. Especifique las var iables de instancia, propiedades, y mtodos para cada clase. Las variables de instancia privadas d ser los pares de coordenadas xy para los cuatro extremos de la Cuadriltero. Escriba un programa que crea una instancia de los objetos de la e rea de cada objeto (excepto Cuadriltero)