1. Create a printer interface
Interface printer{ publicvoid open (); Public void print (String s); Public void close ();}
2. Create a Printerfactory class
Public classprinterfactory{ Public StaticPrinter GetPrinter (intflag) {Printer Printer=NULL; if(flag = = 0) {Printer=NewHpprinter (); }Else if(Flag = = 1) {Printer=NewCanonprinter (); }Else if(Flag = = 2) {Printer=NewXxxprinter (); } returnprinter; }}
3. Create a Hpprinter class
class Implements printer{ publicvoid open () { System.out.println ("Hpprinter Open") ; } Public void print (String s) { System.out.println ("Hpprinter Print--->" + s); } Public void Close () { System.out.println ("Hpprinter close");} }
4. Create a Canonprinter class
classCanonprinterImplementsprinter{Private voidClean () {System.out.println ("Canonprinter Clean"); } Public voidClose () { This. Clean (); System.out.println ("Canonprinter Close"); } Public voidOpen () {System.out.println ("Canonprinter Open"); } Public voidprint (String s) {System.out.println ("Canonprinter Print--->" +s); }}
5. Create a Xxxprinter class
Public class Implements printer{ publicvoid open () { System.out.println ("Xxxprinter Open" ); } Public void print (String s) { System.out.println ("Xxxprinter Print--->" + s); } Public void Close () { System.out.println ("Xxxprinter close");} }
6. Create the test class
Public class test{ publicstaticvoid main (String args[]) { int Flag = 2; = printerfactory.getprinter (flag); Printer.open (); Printer.print ("test"); Printer.close (); }}
Mars Teacher Java4android Interface instance