fork download
  1. class Porta {
  2. static int portasAbertas = 0;
  3. private boolean aberta;
  4. public String cor;
  5. public int dimensaoX, dimensaoY, dimensaoZ;
  6.  
  7. public void abre() {
  8. if (!aberta) {
  9. portasAbertas++;
  10. aberta = true;
  11. }
  12. }
  13.  
  14. public void fecha() {
  15. if (aberta) {
  16. portasAbertas--;
  17. aberta = false;
  18. }
  19. }
  20.  
  21. public void pinta(String novaCor) {
  22. cor = novaCor;
  23. }
  24.  
  25. public void abreFecha(int respUsuario) {
  26. switch (respUsuario) {
  27. case 1:
  28. abre();
  29. System.out.println("A porta está aberta.\n");
  30. break;
  31. case 2:
  32. fecha();
  33. System.out.println("A porta está fechada.\n");
  34. break;
  35. }
  36. }
  37.  
  38. public static int quantasPortasEstaoAbertas() {
  39. return portasAbertas;
  40. }
  41. }
  42.  
  43. class Programa2 {
  44. public static void main(String[] args) {
  45. Porta minhaPorta1;
  46. minhaPorta1 = new Porta();
  47. minhaPorta1.dimensaoX = 100;
  48. minhaPorta1.dimensaoY = 80;
  49. minhaPorta1.dimensaoZ = 30;
  50. minhaPorta1.pinta("Verde");
  51. System.out.println("A porta é: " + minhaPorta1.cor + " e as dimensões são " + minhaPorta1.dimensaoX + ", " + minhaPorta1.dimensaoY + ", " + minhaPorta1.dimensaoZ + ".");
  52. minhaPorta1.abreFecha(1);
  53.  
  54. Porta minhaPorta2;
  55. minhaPorta2 = new Porta();
  56. minhaPorta2.dimensaoX = 120;
  57. minhaPorta2.dimensaoY = 90;
  58. minhaPorta2.dimensaoZ = 40;
  59. minhaPorta2.pinta("Azul");
  60. System.out.println("A porta é: " + minhaPorta2.cor + " e as dimensões são " + minhaPorta2.dimensaoX + ", " + minhaPorta2.dimensaoY + ", " + minhaPorta2.dimensaoZ + ".");
  61. minhaPorta2.abreFecha(2);
  62.  
  63. Porta minhaPorta3;
  64. minhaPorta3 = new Porta();
  65. minhaPorta3.dimensaoX = 70;
  66. minhaPorta3.dimensaoY = 60;
  67. minhaPorta3.dimensaoZ = 10;
  68. minhaPorta3.pinta("Amarela");
  69. System.out.println("A porta é: " + minhaPorta3.cor + " e as dimensões são " + minhaPorta3.dimensaoX + ", " + minhaPorta3.dimensaoY + ", " + minhaPorta3.dimensaoZ + ".");
  70. minhaPorta3.abreFecha(2);
  71.  
  72. System.out.println(Porta.quantasPortasEstaoAbertas());
  73. }
  74. }
  75.  
  76. //https://pt.stackoverflow.com/q/141148/101
Success #stdin #stdout 0.14s 37296KB
stdin
Standard input is empty
stdout
A porta é: Verde e as dimensões são 100, 80, 30.
A porta está aberta.

A porta é: Azul e as dimensões são 120, 90, 40.
A porta está fechada.

A porta é: Amarela e as dimensões são 70, 60, 10.
A porta está fechada.

1