Проектирование с использованием твердых принципов Java с теоремой ограничения с использованием банковского приложения ниJAVA

Программисты JAVA общаются здесь
Anonymous
Проектирование с использованием твердых принципов Java с теоремой ограничения с использованием банковского приложения ни

Сообщение Anonymous »

У меня есть базовый интерфейс учетных записей, а также два класса, реализующие его. У меня есть два класса ClosedStateAccount и OpenedStateAccount. Теперь, когда счет находится в открытом состоянии, только я могу выполнять транзакции, такие как снятие средств и депозит; и если счет находится в закрытом состоянии, я не могу выполнять такие операции, как операции пополнения и снятия средств.
Если выбрано открытое состояние, выбрано сбережение и выбрана операция по внесению денег, я могу внести деньги, используя 1) путем отправки наличных физически 2) RTGS 3) онлайн 4) Google Pay
Если выбран вывод, я могу вывести деньги, используя 1) онлайн 2) 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

Вернуться в «JAVA»