Design a class to represent a credit card

This material is somewhat more theoretical than that of previous topics, so instead of writing a program
for this assignment, you are going to work on a design. Specifically, your task is to design a class to
represent a credit card. Try to design your class such that it only includes fields and methods relative to
a credit card itself, without branching out into related functionality, like that of a bank or a consumer. At
the same time, try to make your class as complete as possible, so that it can be used in any application
that involves a credit card.
To complete this assignment, you will turn in a text document (Word or PDF) with the following
• A list of the fields and methods of your class. For fields you will need to specify the type, the
accessibility (private, public, etc), whether it is a static or instance field, and any limitations on
the values (non-negative, always less than some other value, etc). For the methods, you will
need to supply the return type and parameter type list.
• A free-form description of what each field and method is meant to do, with explanation of any
potentially confusing design decisions.
• A justification for your design based on the guidelines given in section 10.11 of your textbook.
The first two items will look somewhat similar to what was provided in the assignment description for
Assignment 4. The justification will be somewhat similar to what was provided in the file
included in this topic's course materials (week10.jar). You do NOT need to implement your class (i.e.
you do not need to write any code).
Powered by