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}