Após visualizarmos os conceitos de objetos, abstração, métodos e atributos nos artigos nas partes 1, 2 e 3 da série “Orientação à Objetos”, é chegado o momento de entendermos o conceito de classes.
Classes podem ser entendidas como “grupos que agrupam elementos de acordo com determinadas características”. Assim, se determinados elementos podem ser agrupados de acordo com os valores de suas características, e essas características são comuns a diversos elementos, eles podem ser agrupados em classes.
Como já foi abordado em artigos anteriores, a orientação à objetos é na verdade uma abstração do mundo real para situações específicas. Para a definição de classes esta regra também se aplica, ou seja, se ao olhar um objeto “Pessoa”, por exemplo, e conseguirmos identificar um grupo de características comuns a vários outros objetos “Pessoa” (N pessoas possuem as seguintes características: Nome, CPF, RG, Idade e Nacionalidade, por exemplo), este objeto pode ser classificado dentro de uma classe comum – digamos “Pessoas”.
Este conceito é bastante familiar ao de classes de alunos, ou seja, vários objetos “Alunos” são agrupados em uma “Classe” em função da similaridade de seus atributos, especialmente (no caso de uma faculdade, por exemplo) os atributos “Curso” e “Período”. Assim, todos os alunos que cursam Ciência da Computação e estão no 4o. período, por exemplo, são agrupados na classe 4-Semestre-CC. A Figura 1 abaixo apresenta o conceito de Classes.
Figura 1: Na esquerda temos a classe Pessoa com a definição dos atributos e métodos comuns
Imagem retirada do site: http://www.marcoratti.com.br.
O processo de Instanciação
Existe outro conceito que está diretamente relacionado ao de Orientação à Objetos e sem o qual, de nada serviria o de classes – a instanciação.
Na verdade, classes são estruturas modelo de objetos, ou seja, a classe em sí não possui valor agregado e sim define um modelo (métodos e atributos) para o agrupamento ou posterior criação de novos objetos. O processo de instanciação é justamente o mecanismo de criar um novo objeto a partir de uma classe. Assim, considernado o exemplo proposto na Figura 1, para a classe “Pessoa” teríamos após o processo de instanciação a criação dos objetos “Maria” e “Pedro”, por exemplo. Assim, teríamos a seguinte definição dos valores dos atributos para os objetos da Figura 1:
MARIA: Nome = Maria; Endereço = Rua Teste, 45; Telefone = 17 12211221; Idade = 32; Altura = 1.85;
Registrar(); Matricular(); Pagar(); Estudar(); Cadastrar();
PEDRO: Nome = Pedro; Endereço = Rua Teste2, 876; Telefone = 17 11111111; Idade = 82; Altura = 1.45;
Registrar(); Matricular(); Pagar(); Estudar(); Cadastrar();
Portanto, Maria e Pedro são objetos criados a partir da instanciação da classe “Pessoas”.
Bom pessoal… por hoje é isso. Espero que possa ter ajudado mais uma vez. No próximo artigo iremos falar um pouco de herança e interfaces, dois dos recursos mais importantes da Programação Orientada à Objetos.
Facebook
Twitter
Instagram
LinkedIn
RSS