public AbstractStartingHand(int maximumAmountOfCardsInHand, int minimumAmountOfCardsUsed, int maximumAmountOfCardsUsed, PokerGameType gameType) {
        super(maximumAmountOfCardsInHand);
        if (minimumAmountOfCardsUsed < 0) {
            throw new IllegalArgumentException("Minimum amount of cards used can't be negative");
        }
        if (maximumAmountOfCardsUsed <= 0) {
            throw new IllegalArgumentException("Maximum amount of cards used must be positive");
        }
        if (gameType == null) {
            throw new IllegalArgumentException("Gametype can't be null");
        }
        this.minimumAmountOfCardsUsed = minimumAmountOfCardsUsed;
        this.maximumAmountOfCardsUsed = maximumAmountOfCardsUsed;
        this.gameType = gameType;
    }