Programa

Olá.

Estou com uma dúvida no exercício, como eu faço para adicionar todas as cores que eu estou pintando a minha porta por passagem de parâmetro?

Veja abaixo o exercício e em seguida a minha resolução.

Programa 2
Classe: Porta
Atributos: aberta, cor, dimensaoX, dimensaoY, dimensaoZ
Métodos: void abre()
void fecha()
void pinta(String s)
boolean estaAberta()
Crie uma porta, abra e feche a mesma, pinte-a de diversas cores, altere suas dimensões e use o
método estaAberta para verificar se ela está aberta.

Resolução:

public class Porta {

boolean aberta;
String cor;
double dimensaoX;
double dimensaoY;
double dimensaoZ;

void abre() {
	aberta = true;
}

void fecha() {
	aberta = false;
}

void pinta(String s) {
	this.cor += s;
}

boolean estaAberta() {
	return aberta;

}

public class TestaPorta {

public static void main(String[] args){

	Porta porta = new Porta();
	porta.abre();
	porta.fecha();
	
	porta.cor = "Amarela";
	porta.cor = "Azul";
	porta.cor = "Vermelho";
	porta.cor = "Branco";
	
	porta.dimensaoX = 50;
	porta.dimensaoY = 100;
	porta.dimensaoZ = 85;
	
	System.out.println("A porta está aberta? " + porta.estaAberta());
	System.out.println(porta.cor);
}

Crie um List que armazenará todas as cores que forem atribuídas para a porta em questão!

1 curtida

@Jonathan_Medeiros, veja eu realizei algumas alterações o que acha?

public class Porta {

boolean aberta;
String cor;
double dimensaoX, dimensaoY, dimensaoZ;

public void pintar(String s) {
	this.cor = s;
	System.out.println("A cor da Porta é: " + this.cor);
}

public void abre() {
	if (this.aberta == false) {
		this.aberta = true;
	}
}

public void fecha() {
	if (this.aberta == true) {
		this.aberta = false;
	}
}

boolean estaAberta() {
	return this.aberta;
}

public String qualcor() {
	return this.cor;
}

public double getDimensaoX() {
	return dimensaoX;
}

public void setDimensaoX(double dimensaoX) {
	this.dimensaoX = dimensaoX;
}

public double getDimensaoY() {
	return dimensaoY;
}

public void setDimensaoY(double dimensaoY) {
	this.dimensaoY = dimensaoY;
}

public double getDimensaoZ() {
	return dimensaoZ;
}

public void setDimensaoZ(double dimensaoZ) {
	this.dimensaoZ = dimensaoZ;
}

public class TestaPorta {

public static void main(String[] args) {

	Porta porta = new Porta();
	porta.pintar("Verde");
	porta.setDimensaoX(1.90);
	porta.setDimensaoY(0.80);
	porta.setDimensaoZ(0.80);

	porta.abre();
	System.out.println(porta.aberta);

	porta.fecha();
	System.out.println(porta.aberta);

	System.out.println("A cor da porta é: " + porta.qualcor());
	System.out.println("As dimensões da porta são: " + "\n" + "X: " + porta.getDimensaoX() + "\n" + "Y: "
			+ porta.getDimensaoY() + "\n" + "Z: " + porta.getDimensaoZ());

}

Está legal, o importante é atender o que o exercicío pede!