Skip to content

Instantly share code, notes, and snippets.

@legarnica
Last active August 31, 2020 01:38
Show Gist options
  • Save legarnica/b7e5b61d9e2c8597a2b9968de9725bf7 to your computer and use it in GitHub Desktop.
Save legarnica/b7e5b61d9e2c8597a2b9968de9725bf7 to your computer and use it in GitHub Desktop.
abstract-factory-ex001
package cl.lherrera;
public class Principal {
public static void main(String[] args) {
Cuadrado cuadrado = new Cuadrado(2.0);
Rectangulo rectangulo = new Rectangulo(2.0, 3.0);
System.out.println("El area de un " + cuadrado + " es: " + cuadrado.area());
System.out.println("El area de un " + rectangulo + " es: " + rectangulo.area());
}
}
class Cuadrado {
private double lado;
public Cuadrado() {
this.lado = 0.0;
}
public Cuadrado(double lado) {
this.lado = lado;
}
public double getLado() {
return lado;
}
public void setLado(double lado) {
this.lado = lado;
}
@Override
public String toString() {
return "Cuadrado [lado=" + lado + "]";
}
public double area() {
return Math.pow(this.lado, 2);
}
}
class Rectangulo {
private double ladoA;
private double ladoB;
public Rectangulo() {
this.ladoA = 0.0;
this.ladoB = 0.0;
}
public Rectangulo(double ladoA, double ladoB) {
this.ladoA = ladoA;
this.ladoB = ladoB;
}
public double getLadoA() {
return ladoA;
}
public void setLadoA(double ladoA) {
this.ladoA = ladoA;
}
public double getLadoB() {
return ladoB;
}
public void setLadoB(double ladoB) {
this.ladoB = ladoB;
}
@Override
public String toString() {
return "Rectangulo [ladoA=" + ladoA + ", ladoB=" + ladoB + "]";
}
public double area() {
return this.ladoA * this.ladoB;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment