Created
March 17, 2024 23:45
-
-
Save alexjosesilva/c3b47871f19984d5dc7015cb47fce8ab to your computer and use it in GitHub Desktop.
Compositer.java Design Pattern
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import java.util.ArrayList; | |
import java.util.List; | |
public interface Componente { | |
void operacao(); | |
} | |
public class Folha implements Componente { | |
@Override | |
public void operacao() { | |
System.out.println("Operação da Folha"); | |
} | |
} | |
public class Composto implements Componente { | |
private List<Componente> componentes = new ArrayList<>(); | |
public void adicionar(Componente componente) { | |
componentes.add(componente); | |
} | |
@Override | |
public void operacao() { | |
for (Componente componente : componentes) { | |
componente.operacao(); | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment