creditcard classfieldscustomer bank account balance limit behaviorsget customerget bankget accountmake payment(amountget balanceget limitcharge(pricepredatorycreditcard classfieldsapr behaviorsprocess monthcharge(pricefigure diagram of an inheritance relationship figure provides an overview of our use of inheritance in designing the new predatorycreditcard classand code fragment gives complete python implementation of that class to indicate that the new class inherits from the existing creditcard classour definition begins with the syntaxclass predatorycreditcard(creditcardthe init chargeand body of the new class provides three member functionsprocess month the init constructor serves very similar role to the original creditcard constructorexcept that for our new classthere is an extra parameter to specify the annual percentage rate the body of our new constructor relies upon making call to the inherited constructor to perform most of the initialization (in facteverything other than the recording of the percentage ratethe mechanism for calling the inherited constructor relies on the syntaxsuperspecificallyat line the command superinit (customerbankacntlimitcalls the init method that was inherited from the creditcard superclass note well that this method only accepts four parameters we record the apr value in new field named apr in similar fashionour predatorycreditcard class provides new implementation of the charge method that overrides the inherited method yetour implementation of the new method relies on call to the inherited methodwith syntax supercharge(priceat line the return value of that call designates whether