Если выбрано открытое состояние, выбрано сбережение и выбрана операция внесения денег, то я могу внести деньги, используя
- отправив наличные физически
- RTGS
- онлайн
- Google Pay
Если выбрано закрытое состояние, я не могу внести или снять деньги.
Также спроектируйте его с учетом теоремы CAP и должны использовать концепции шаблона проектирования фабрики по мере необходимости, а затем инициализировать объект класса только при необходимости. Расскажите, пожалуйста, как это сделать. Используйте другие шаблоны проектирования, которые также удовлетворяют теореме CAP и всем пяти основным принципам.
Код: Выделить всё
package com.boot.LowLevelDesignProblem1;
public interface Account
{
public default void savingsOption()
{
System.out.println("Saving option is available");
}
public default void CurrentOption()
{
System.out.println("Current option is available");
}
public void deposit(double amount);
public void withdraw(double amount);
}
package com.boot.LowLevelDesignProblem1;
public class ClosedStateAccout implements Account{
@Override
public void deposit(double amount) {
System.out.println( "Closed state account");
System.out.println( "Deposit Option is not available" );
}
@Override
public void withdraw(double amount) {
System.out.println( "Closed state account" );
System.out.println( "Withdraw Option is available");
}
}
package com.boot.LowLevelDesignProblem1;
public class OpenedStateAccount implements Account
{
@Override
public void deposit(double amount) {
System.out.println( "Opened state account");
System.out.println( "Deposit Option is available" );
}
@Override
public void withdraw(double amount) {
System.out.println( "Opened state account" );
System.out.println( "Withdraw Option is available");
}
}
Подробнее здесь: https://stackoverflow.com/questions/798 ... l-design-b
Мобильная версия