martes, 20 de noviembre de 2012

Este programa esta hecho en Java es herencia y polimorfismo



Clase  Main
package Examen;
public class Main {
    public static void main(String[] args) {
             Cuadrado Cuadrado1 = new Cuadrado();
        System.out.println(" El area del " + Cuadrado1.Nombre + " de lado " + Cuadrado1.lado + " es " + Cuadrado1.area());
        Cuadrado Cuadrado2 = new Cuadrado(2.5f);
        System.out.println(" El area del " + Cuadrado2.Nombre + " de lado " + Cuadrado2.lado + " es " + Cuadrado2.area());
        Triangulo Triangulo1 = new Triangulo(2, 3, 4);
        System.out.println(" El Perimetro del " + Triangulo1.Nombre + " de lados " + Triangulo1.lado1 + "," + Triangulo1.lado2 + "," + Triangulo1.lado3 + "es" + Triangulo1.perimetro());
        Triangulo Triangulo2 = new Triangulo(3, 4);
        System.out.println("El Perimetro del " + Triangulo2.Nombre + "de lados" + Triangulo2.lado1 + "," + Triangulo2.lado2 + "," + Triangulo2.lado3 + "es" + Triangulo2.perimetro());
        Circulo Circulo = new Circulo(2.5f);

        System.out.println("El area del" + Circulo.Nombre + "de diametro" + Circulo.diametro + "es" + Circulo.area());

 Cuadrado1.imprimeNombre();
 Triangulo1.imprimeNombre();
 Circulo.imprimeNombre();
    }
}

1)  Clase: Figura Geometrica
package Examen;
import java.io.*;
abstract class FiguraGeometrica{
String Nombre;
void imprimeNombre(){
System.out.println(Nombre);
}
}
2)  Clase: Cuadrado

package Examen;

class Cuadrado extends FiguraGeometrica {

    float lado;

    Cuadrado() {
        this(1.0f);
    }
    Cuadrado(float lado) {
        this.Nombre = "Cuadrado";
        this.lado = lado;
    }
    float area() {
        return (lado * lado);
    }
}
3)Clase: Triangulo

package Examen;
class Triangulo extends FiguraGeometrica {
    float lado1, lado2, lado3;
    Triangulo(float lado1, float lado2) {
        this(lado1, lado2, (float) Math.sqrt((lado1 * lado1) + (lado2 * lado2)));
    }
    Triangulo(float lado1, float lado2, float lado3) {
        this.Nombre = "Triangulo";
        this.lado1 = lado1;
        this.lado2 = lado2;
        this.lado3 = lado3;
        if ((lado1 + lado2 < lado3) || (lado1 + lado3 < lado2) || (lado2 + lado3 < lado1)) {
            this.Nombre = "Triangulo incoherente";
        }
    }
    float perimetro() {
        return lado1 + lado2 + lado3;
    }
}

4) Clase: Circulo
package Examen;
class Circulo extends FiguraGeometrica {
    float diametro;

    Circulo(float diametro) {
        this.Nombre = "Circulo";
        this.diametro = diametro;
    }
    float area() {
        return (float) (Math.PI * diametro * diametro / 4);
    }
    float perimetro() {
        return (float) (Math.PI * diametro);
    }
}

No hay comentarios:

Publicar un comentario

Nota: solo los miembros de este blog pueden publicar comentarios.