You are on page 1of 4

/*

* 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";
}

//////////////////////////////////////////////////////////////////////////////

class Cubo extends Tridimencional{
protected double Arista;

public Cubo(double a){
Arista = a;
}
@Override
public double Area(){
double a;
a = (6*(Arista*Arista));
return Area = a;
}
@Override
public String getFigura() {
return Figura = "Tridimencional";
}
@Override
public double getVolumen() {
double vol;
vol = (Arista*Arista*Arista);
return Volumen = vol;
}
@Override
public String getNombre() {
return Nombre="Cubo";
}
}

////////////////////////////////////////////////////////////////////////

public class eje{

public void main (String [] args){

FigurasGeometricas fig[] = new FigurasGeometricas[4];
fig[0]=new Circulo(5);
fig[1]=new Cuadrado(5);
fig[2]=new Esfera(5);
fig[3]=new Cubo(6);


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)

You might also like