Class Coin

java.lang.Object
org.episteme.social.economics.money.Coin
All Implemented Interfaces:
Serializable, Commented, ComprehensiveIdentification, Identified<Identification>, Named

public final class Coin extends Object implements ComprehensiveIdentification
Represents a physical coin or banknote.

Each coin has a unique identification (serial number), a face value, and an emission date. Common denominations include:

  • Euro: 1¢, 2¢, 5¢, 10¢, 20¢, 50¢, €1, €2
  • USD: 1¢, 5¢, 10¢, 25¢, 50¢, $1
Since:
1.0
Author:
Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
See Also:
  • Constructor Details

    • Coin

      public Coin(Identification identification, TimeCoordinate emission, Money value)
      Creates a new Coin.
      Parameters:
      identification - unique serial number
      emission - the date of minting
      value - the face value
      Throws:
      NullPointerException - if any argument is null
    • Coin

      public Coin(Identification id, TimeCoordinate emission, Money value, String mintMark)
      Creates a new Coin with mint mark.
      Parameters:
      emission - the date of minting
      value - the face value
      mintMark - the mint mark (e.g., "D" for Denver)
      identification - unique serial number
    • Coin

      public Coin(double value, Identification identification, TimeCoordinate emission, Currency currency)
      Creates a new Coin from amount and currency.
      Parameters:
      value - numeric face value
      identification - unique serial number
      emission - the date of minting
      currency - the currency
  • Method Details