A self-contained object that consists of both data and the procedures or processes to manipulate that data.