Em linguagens orientadas a objetos (OO), classes representam
a descrição da implementação de tipos abstratos
a partir dos quais instâncias podem ser criadas. Cada instância,
depois de criada, guarda seu estado próprio independente
das demais instâncias. Esse estado pode ser
alterado de acordo com operações definidas pela classe,
mas, ao serem executadas, as operações atuam individualmente
sobre cada instância. Na nomenclatura OO, instâncias e operações são conhecidas,
respectivamente, como