11 August 2016

Factory Design Pattern in Java

Factory Design Pattern
Java 2016
package com.phone;

public interface OS {
 void spec();
}
package com.phone;

public class Android implements OS {

 @Override
 public void spec() {
  System.out.println("Samsung Android");
 }

}
package com.phone;

public class IOS implements OS{

 @Override
 public void spec() {
  System.out.println("Iphone Ios");
 }

}
package com.phone;

public class Windowns implements OS{

 @Override
 public void spec() {
  System.out.println("Nokia to die..");
 }

}
package com.phone;

public class OperatingSystemFactory {
 //Creates: có thể thêm hoặc thay đổi
 public OS getInstance(String str){
  if(str.equals("Open")){
   return new Android();
  }else if(str.equals("Close")){
   return new IOS();
  }else if(str.equals("Die")){
   return new Windowns();
  }
  return null;
 }
}
import com.phone.Android;
import com.phone.OS;
import com.phone.OperatingSystemFactory;

public class MainFactory {
 //Client: đoạn code dưới không cần thay đổi
 public static void main(String[] args) {
  OperatingSystemFactory osf = new OperatingSystemFactory();
  OS obj = osf.getInstance("Close");//Phải thông qua getInstance mới được chạy spec() của class tương ứng
  obj.spec();
 }
}
"Close"
Output: Iphone Ios

0 nhận xét:

Post a Comment

 

BACK TO TOP

Xuống cuối trang