Hi,
Card class should not be a subclass of Transaction, because of the simple fact that a card is not a transaction. Try to define a relationship between Transaction and Card. So, a Card know its Transaction objects and a Transaction object knows which Card object it is associated with. Then, inside the Transaction code, you can find Card object reference and invoke on it.
Thanks.
Tommy