Package account

Class AccountImplValid4J

java.lang.Object
account.AccountImplValid4J
All Implemented Interfaces:
IAccount

public class AccountImplValid4J
extends java.lang.Object
implements IAccount
Implements the IAccount interface Uses Valid4J to implement the pre- and post-conditions
Author:
Horst Lichter, Jochen Ludewig Software Engineering – Grundlagen, Menschen, Prozesse, Techniken, dpunkt.verlag (c) 2023
  • Constructor Summary

    Constructors
    Constructor Description
    AccountImplValid4J​(int amount, java.lang.String owner, int overdr)  
  • Method Summary

    Modifier and Type Method Description
    int balance()  
    void deposit​(int amount)  
    java.lang.String getHolder()  
    int overdraft()  
    void setHolder​(java.lang.String newHolder)  
    void withdraw​(int amount)  

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • AccountImplValid4J

      public AccountImplValid4J​(int amount, java.lang.String owner, int overdr) throws org.valid4j.errors.ContractViolation
      Parameters:
      amount - initial deposited amount
      owner - of the account
      overdr - amount of the overdraft limit
      Throws:
      org.valid4j.errors.ContractViolation
  • Method Details

    • balance

      public int balance()
      Specified by:
      balance in interface IAccount
      Returns:
      the account's balance
    • deposit

      public void deposit​(int amount) throws org.valid4j.errors.ContractViolation
      Specified by:
      deposit in interface IAccount
      Parameters:
      amount - to be deposited
      Throws:
      org.valid4j.errors.ContractViolation
    • withdraw

      public void withdraw​(int amount) throws org.valid4j.errors.ContractViolation
      Specified by:
      withdraw in interface IAccount
      Parameters:
      amount - to be withdrawn
      Throws:
      org.valid4j.errors.ContractViolation
    • getHolder

      public java.lang.String getHolder() throws org.valid4j.errors.ContractViolation
      Specified by:
      getHolder in interface IAccount
      Returns:
      the holder of the account
      Throws:
      org.valid4j.errors.ContractViolation
    • setHolder

      public void setHolder​(java.lang.String newHolder) throws org.valid4j.errors.ContractViolation
      Specified by:
      setHolder in interface IAccount
      Parameters:
      newHolder - the new account holder
      Throws:
      org.valid4j.errors.ContractViolation
    • overdraft

      public int overdraft() throws org.valid4j.errors.ContractViolation
      Specified by:
      overdraft in interface IAccount
      Returns:
      the defined overdraft amount
      Throws:
      org.valid4j.errors.ContractViolation