A simple calculator example to describe the factory Mode
Operator public interface
Package com. ISS. factory;
Public interface operator {
Public int getresult (int x, int y );
}
Add. Java
Package com. ISS. factory;
Public class add implements operator {
@ Override
Public int getresult (int x, int y ){
// Todo auto-generated method stub
Return X + Y;
}
}
Minus. Java
Package com. ISS. factory;
Public class minus implements operator {
@ Override
Public int getresult (int x, int y ){
// Todo auto-generated method stub
Return x-y;
}
}
Mul. Java
Package com. ISS. factory;
Public class Mul implements operator {
@ Override
Public int getresult (int x, int y ){
// Todo auto-generated method stub
Return x * Y;
}
}
Divide. Java
Package com. ISS. factory;
Public class divide implements operator {
@ Override
Public int getresult (int x, int y ){
// Todo auto-generated method stub
Return x/y;
}
}
Operatorfactory. Class
Package com. ISS. factory;
Public class operatorfactory {
Private Static Operator = NULL;
Public static operator getoperator (string OP ){
If (OP = "+ "){
Operator = new add ();
} Else if (OP = "-"){
Operator = new minus ();
} Else if (OP = "*"){
Operator = new MUL ();
} Else if (OP = "/"){
Operator = new divide ();
} Else {
Return NULL;
}
Return operator;
}
}
Test. Java
Package com. ISS. factory;
Public class test {
Public static void main (string [] ARGs ){
Operator = operatorfactory. getoperator ("+ ");
System. Out. println (operator. getresult (10, 20 ));
}
}
Conclusion: The factory model mainly utilizes the object-oriented polymorphism feature. The program has multiple options during actual running!