Commented composite example.

This commit is contained in:
Ilkka Seppala 2014-08-31 09:03:10 +03:00
parent e71fba03a8
commit e760858bb6
2 changed files with 12 additions and 2 deletions

View File

@ -1,10 +1,16 @@
package com.iluwatar; package com.iluwatar;
/**
*
* With Composite we can treat tree hierarchies of objects
* with uniform interface (LetterComposite). In this example
* we have sentences composed of words composed of letters.
*
*/
public class App public class App
{ {
public static void main( String[] args ) public static void main( String[] args )
{ {
System.out.println("Message from the orcs: "); System.out.println("Message from the orcs: ");
LetterComposite orcMessage = new Messenger().messageFromOrcs(); LetterComposite orcMessage = new Messenger().messageFromOrcs();
@ -16,6 +22,5 @@ public class App
LetterComposite elfMessage = new Messenger().messageFromElves(); LetterComposite elfMessage = new Messenger().messageFromElves();
elfMessage.print(); elfMessage.print();
} }
} }

View File

@ -3,6 +3,11 @@ package com.iluwatar;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
/**
*
* Composite interface.
*
*/
public abstract class LetterComposite { public abstract class LetterComposite {
private List<LetterComposite> children = new ArrayList<LetterComposite>(); private List<LetterComposite> children = new ArrayList<LetterComposite>();