package Com.Srini.DesignPatterns.Factory;
public class CurrencyFactory {
public static Currency getCurrencyByCountry(String cnty) throws Exception{
if("IN".equalsIgnoreCase(cnty)){
return new India();
} else if("USA".equalsIgnoreCase(cnty)){
return new USA();
}
throw new Exception("Invalid country...");
}
public static void main(String a[]){
Currency india;
try {
india = CurrencyFactory.getCurrencyByCountry("USA");
System.out.println("Indian currency: "+india.getCurrency());
System.out.println("Indian currency symbol: "+india.getSymbol());
} catch (Exception e) {
e.printStackTrace();
}
}
}
public class CurrencyFactory {
public static Currency getCurrencyByCountry(String cnty) throws Exception{
if("IN".equalsIgnoreCase(cnty)){
return new India();
} else if("USA".equalsIgnoreCase(cnty)){
return new USA();
}
throw new Exception("Invalid country...");
}
public static void main(String a[]){
Currency india;
try {
india = CurrencyFactory.getCurrencyByCountry("USA");
System.out.println("Indian currency: "+india.getCurrency());
System.out.println("Indian currency symbol: "+india.getSymbol());
} catch (Exception e) {
e.printStackTrace();
}
}
}
-------------------------------------------
package Com.Srini.DesignPatterns.Factory;
public interface Currency {
public String getCurrency();
public String getSymbol();
}
------------------------------------------
package Com.Srini.DesignPatterns.Factory;
public class India implements Currency{
@Override
public String getCurrency() {
return "Rupee";
}
@Override
public String getSymbol() {
return "Rs";
}
public static void main(String a[]){
India in = new India();
System.out.println(in.getSymbol());
}
}
-------------------------------------
package Com.Srini.DesignPatterns.Factory;
public class USA implements Currency{
@Override
public String getCurrency() {
return "Dollar";
}
@Override
public String getSymbol() {
return "$";
}
}
No comments:
Post a Comment