Como entendi o conceito basico de Programação Orientada a Objetos de uma forma mais simples
A ideia de Objeto de uma linguagem foi criado a partir da necessidade de se aproveitar um código, reaproveitando
sua usabilidade e interação entre códigos. Imagine um jogo onde temos um personagem principal e conforme
passamos os níveis nos deparamos com inimigos cada vez mais fortes. Apesar de em cada nível o inimigo ser cada vez mais
dificil de abater, contamos com características ´parecidas´ de um pro outro. No level 1, o inimigo pode utilizar bombas
afim de causar dano no OBJETO (personagem) principal, já no segundo level além de cor diferente e também causar danos com
bombas, esse inimigo vem com mais uma habilidade: Ele pula afim de esmagar o seu oponente.
Nesse caso, não é necessário utilizar um novo código para termos um novo inimigo, e sim ´reutilizarmos´ o código acrescentando
novos ATRIBUTOS. Os ATRIBUTOS são elementos (características) dentro de uma CLASSE de OBJETOS.
Se pensarmos em um jogo como Mario Kart, podemos dizer que o personagem Mario é um objeto, o kart que ele movimenta no jogo tb é um objeto,
assim como os obstáculos, os inimigos, a pista, e outros elementos que compõem aquele game tb são considerados OBJETOS. Agora imaginem que
temos os Objetos Personagens: Mario, Wario, Luigi e Yoshi. As características desses objetos seriam os ATRIBUTOS: cor, nome, roupa, etc...,
essas características constroem novos OBJETOS (personagens) a partir de códigos já existentes, sendo apenas reutilizados com novos ATRIBUTOS.
OBJETOS - PERSONAGENS: 1. Mario 2.Wario 3.Luigi 4. Yoshi
-cor:bege (atributo) -cor:bege(atributo) -cor:bege(atributo) -cor:verde(atributo)
-roupa: Azul(atributo) -roupa: Roxo(atributo) -roupa: Verde(atributo) -roupa:Branco(atributo)