Herança - Figuras

De Aulas

Conteúdos relacionados: Programação em Java

Classe Figura

 1public class Figura {
 2	private int id;
 3	private String cor;
 4	private int x;
 5	private int y;
 6
 7	public Figura(int id, String cor, int x, int y) {
 8		setId(id);
 9		setCor(cor);
10		setX(x);
11		setY(y);
12	}
13
14	public int getId() {
15		return id;
16	}
17
18	public void setId(int id) {
19		this.id = id;
20	}
21
22	public String getCor() {
23		return cor;
24	}
25
26	public void setCor(String cor) {
27		this.cor = cor;
28	}
29
30	public int getX() {
31		return x;
32	}
33
34	public void setX(int x) {
35		this.x = x;
36	}
37
38	public int getY() {
39		return y;
40	}
41
42	public void setY(int y) {
43		this.y = y;
44	}
45
46	public String toString() {
47		return getClass().getName().toString() + ", " + id + ", " + cor + ", "
48				+ x + ", " + y;
49	}
50}

Classe Retangulo

 1public class Retangulo extends Figura {
 2	private int altura;
 3	private int largura;
 4	
 5	public Retangulo(int id, String cor, int x, int y, int altura, int largura) {
 6		super(id, cor, x, y);
 7		setAltura(altura);
 8		setLargura(largura);
 9	}
10
11	public int getAltura() {
12		return altura;
13	}
14
15	public void setAltura(int altura) {
16		this.altura = altura;
17	}
18
19	public int getLargura() {
20		return largura;
21	}
22
23	public void setLargura(int largura) {
24		this.largura = largura;
25	}
26	
27	public String toString() {
28		return super.toString() + ", " + altura + ", " + largura;
29	}
30}

Classe Triangulo

 1public class Retangulo extends Figura {
 2	private int altura;
 3	private int largura;
 4	
 5	public Retangulo(int id, String cor, int x, int y, int altura, int largura) {
 6		super(id, cor, x, y);
 7		setAltura(altura);
 8		setLargura(largura);
 9	}
10
11	public int getAltura() {
12		return altura;
13	}
14
15	public void setAltura(int altura) {
16		this.altura = altura;
17	}
18
19	public int getLargura() {
20		return largura;
21	}
22
23	public void setLargura(int largura) {
24		this.largura = largura;
25	}
26	
27	public String toString() {
28		return super.toString() + ", " + altura + ", " + largura;
29	}
30}

Classe Circulo

 1public class Circulo extends Figura {
 2	private double raio;
 3	
 4	public Circulo(int id, String cor, int x, int y, double d) {
 5		super(id, cor, x, y);
 6		setRaio(d);
 7	}
 8
 9	public double getRaio() {
10		return raio;
11	}
12
13	public void setRaio(double raio) {
14		this.raio = raio;
15	}
16	
17	public String toString() {
18		return super.toString() + ", " + raio;
19	}
20}

Programa Principal

 1public class Principal {
 2	public static void main(String [] args) {
 3		Figura fig[] =  new Figura[3];
 4		
 5		fig[0] = new Triangulo(0, "Branco", 1, 10, 40, 60);
 6		fig[1] = new Retangulo(1, "Azul", 23, 523, 70, 100);
 7		fig[2] = new Circulo(2, "Amarelo", 460, 222, 67.7);
 8		
 9		for (int i = 0 ; i < fig.length; i++) {
10			System.out.print(fig[i]);
11			System.out.println(" Minha ID e: " + fig[i].getId());
12			if (fig[i] instanceof Circulo) {
13				System.out.println(" e meu raio e " + ((Circulo) fig[i]).getRaio());	
14			}
15		}
16	}
17}