All pastes #940525 Raw Edit

Mine

public java v1 · immutable
·published 2008-03-13 00:57 UTC
rendered paste body
interface Printer {   void print(Message message);}class Message {      private String message;   public Message(String message) {      this.message = message;   }   public void print(Printer printer) {      printer.print(this);   }   public String toString() {      return message;   }}abstract class AbstractPrinterFactory {      public static AbstractPrinterFactory getFactory() {      return new SystemOutPrinterFactory();   }   public abstract Printer getPrinter();}class SystemOutPrinterFactory extends AbstractPrinterFactory {   public Printer getPrinter() {      return new SystemOutPrinter();   }}class SystemOutPrinter implements Printer {      public void print(Message message) {      System.out.println(message);   }}public class HelloWorld {   public static void main(String[] args) {      Message message = new Message("Hello, World!");      AbstractPrinterFactory factory = AbstractPrinterFactory.getFactory();      Printer printer = factory.getPrinter();      message.print(printer);   }}