Primeiramente vamos definir o que são atributos: Atributos são os dados (valores) de um determinado objeto. Lembra dos tipos de fogões? Tínhamos fogão de 4 bocas, fogão branco, fogão Brastemp etc.
Cada objeto possui dados exclusivos (particulares) e por isso eles são únicos. São os atributos de um objeto que o caracterizam. Por exemplo: fogão Brastemp de 4 bocas branco ou fogão Consul de 6 bocas gelo. Quando fazemos isso, estamos novamente classificando os fogões por seus atributos, nesse caso por ‘marca’, ‘número de bocas’ e ‘cor’.
Mas por que classificar os atributos depois das responsabilidades? A resposta é que os dados não serviriam de nada, se não pudessem ser passados para outros objetos. No entanto, como vimos que tudo que um objeto faz é uma responsabilidade dele, passar uma informação para outro objeto TAMBÉM deve ser identificado como uma responsabilidade.
Isso nos mostra que os dados não existem por acaso. No nosso exemplo do fogão eu só vou ter a informação “cor” se eu precisar saber qual é a cor do fogão. Nesse caso teríamos uma responsabilidade “Informar cor”.
Mas “informar cor” seria responsabilidade do fogão? Uma importante preocupação é pensar em objetos responsáveis por si próprios. Isso é o que fundamenta a idéia de encapsulamento.