Main Class:
package bkash;
public class BKash
{
public static void main(String[] args)
{
PaymentEngine PE = new PaymentEngine();
BKashPayment BKP = new BKashPayment();
CashPayment CP = new CashPayment();
PE.accept(BKP);
PE.accept(CP);
}
}
Interface Class:
package bkash;
public interface Payment
{
long getAmount();
}
BKashPayment Class:
package bkash;
public class BKashPayment implements Payment
{
@Override
public long getAmount()
{
System.out.println("Taking BKash Payment");
return 100;
}
}
CashPayment Class:
package bkash;
public class CashPayment implements Payment
{
@Override
public long getAmount()
{
System.out.println("Taking Cash Payment");
return 500;
}
}
PaymentEngine Class:
package bkash;
public class PaymentEngine
{
public void accept(Payment p)
{
System.out.println("Acceppting Payment: "+p.getAmount());
}
}
Output
Taking BKash Payment
Acceppting Payment: 100
Taking Cash Payment
Acceppting Payment: 500
Add your comment