Minicursos - Programação Orientada a Objetos

Instância


Uma instância ou o processo de instanciação é a criação de um objeto a partir de uma classe. É o exato momento em que um espaço na memória é alocado para que o objeto o ocupe e manipule seus dados lá. Na instanciação a classe é lida e, de acordo com o que está determinado nela, o objeto é criado e passa a ser um item operante na aplicação. Vamos aproveitar a classe Carro, que criamos anteriormente, e fazer a instanciação dela.

O comando é muito simples, vejam:

Carro objCarro = new Carro();

Definimos o tipo, depois o nome, e em seguida, com o comando new, criamos uma instância dele. Vejam o código comentado no Visual C#:

Instância

Após esse procedimento temos um objeto do tipo Carro alocado na memória, cujo nome é objCarro, ou seja, a partir desse nome é possível acessar seus métodos.

Vamos dar uma olhada na classe Carro:

Instância

Podemos ver que ela possui dois métodos, que são o setCor e o getCor. Agora vamos, a partir do objeto criado e que chamamos de objCarro, acessar esses métodos e definir uma cor para nosso carro. Basta que digitemos o nome do objeto e acrescentemos um ponto, e em seguida o nome do método que gostaríamos de chamar. O IntelliSense do Visual C# já se encarrega de exibi-los entre os métodos disponíveis, conforme figura abaixo:

Instância

Destaquei os dois métodos que criamos, pois os outros são métodos padrão do C#.

Vamos definir a cor desse carro para "azul".

Instância

Teoricamente temos, nesse instante, um objeto alocado na memória, do tipo Carro, cujo nome é objCarro e com a propriedade cor definida como Azul, mas para vermos se isso funcionou, vamos exibir, em uma caixa de diálogo, o valor definido na propriedade cor desse objeto. Para isso farei a inserção da seguinte linha de comando, abaixo da definição da cor do carro.

MessageBox.Show("A cor do objeto carro, cujo nome é objCarro é: " + objCarro.getCor());

Então o bloco completo de comandos ficará assim:

private void button1_Click(object sender, EventArgs e)
{
Carro objCarro = new Carro();
objCarro.setCor("Azul");
MessageBox.Show("A cor do objeto carro, cujo nome é objCarro é: " + objCarro.getCor());
}

Vejam que chamei o método getCor() do objeto objCarro para retornar o valor da propriedade cor.

Agora vamos executa-lo:

Instância

Vejam que, de fato, a cor resgatada desse objeto foi o Azul, que é o valor que definimos na linha: objCarro.setCor("Azul");

O que é preciso que fique muito claro, e se você for um programador acostumado a utilizar métodos procedimentais terá um pouco de resistência em aceitar, é que a classe Carro NÃO possui, nesse momento, a cor "azul" definida dentro da dela, mas sim o objeto que criamos a partir dela e chamamos de objCarro possui o valor Azul em sua propriedade responsável por armazenar a cor. Para tentar deixar isso bem claro, criarei outro objeto, também do tipo Carro, de nome xyz, e darei outra cor para ele, vejam:

Instância

Vamos à execução desse código:

Instância

Agora ficou claro que temos dois objetos do tipo Carro na memória. Um deles chama-se objCarro e sua propriedade cor possui o valor “Azul”, e o outro chama-se xyz e tem em sua propriedade cor o valor “Vermelha”.

Nós poderíamos criar quantos objetos do tipo "Carro" quiséssemos e todos teriam a mesma estrutura, pois foram criados a partir da mesma classe, mas poderiam receber valores diferentes para suas propriedades. Vejam a imagem abaixo, que resume bem o que é o processo de instanciação:

Instância

Podemos criar quantos objetos do tipo "Carro" quisermos, mas cada um deles poderá ter seus próprios dados, como Marca e Modelo.

Percebam o quanto isso facilita a criação do código. Se estivéssemos criando uma classe Paciente, que armazenaria dados de pacientes para um software de gerenciamento de uma clínica, por exemplo, poderíamos criar as seguintes propriedades:

Nome
Endereço
Idade
E-mail
Sintomas
Data da Consulta

Enfim, dessa forma poderíamos instanciar esse objeto e manipular essas informações de forma bastante organizada e, ao término deste ciclo, poderíamos resgatar as informações previamente armazenadas e salva-las em um banco de dados.

No tópico seguinte começarei a falar sobre os quatro pilares de sustentação da POO, que são Abstração, Encapsulamento, Herança e Polimorfismo. Todos eles são de vital importância para a criação de códigos eficientes e robustos em qualquer linguagem de programação orientada a objetos.



Algumas notícias

O que acontece com o cérebro no exato momento em que morremos

O que passa em nossa cabeça no momento da morte? Não se sabe exatamente e, embora os cientistas tenham alguma resposta, a resposta continua sendo um grande mistério. Além de difícil solução, tentar respondê-la pode criar implicações éticas. No entanto, uma equipe de cientistas da Universidade...

Ler Notícia Completa

Operada e devolvida ao útero, menina que nasceu duas vezes hoje 'acorda sorrindo toda manhã'

Um bebê pode nascer duas vezes? Não é o caso da absoluta maioria das crianças, mas foi assim para a pequena Lynlee Boemer. Em outubro de 2015, sua mãe, Margaret Boemer, descobriu que estava grávida de gêmeos. Ela sofreu um aborto espontâneo, mas um dos bebês sobreviveu. Com dez semanas de ges...

Ler Notícia Completa

Médicos dizem estar perto de chegar a exame de sangue para todos os tipos de câncer

Cientistas dizem que estão mais perto de criar um exame de sangue universal, capaz de identificar todos os tipos de câncer. Estudo conduzido com 1.005 pacientes por uma equipe da Universidade Johns Hopkins, dos Estados Unidos, testou um método que detecta oito tipos de proteínas e 16 mutações ge...

Ler Notícia Completa

Formato JPEG está com os dias contados

Há quantos anos você ouve falar em arquivos JPG? O formato já era utilizado nos primórdios da web comercial nos anos 1990, vivendo há mais de 20 anos como o principal método de compressão de imagens do público. No que depender de Google, Mozilla e outras empresas, isso pode mudar dentro de algum...

Ler Notícia Completa

EUA aprovam 'droga viva', 1ª terapia contra câncer que reestrutura sistema imunológico do paciente

Os Estados Unidos aprovaram o primeiro tratamento que reestrutura o sistema imunológico do paciente para atacar o câncer. A agência reguladora de medicamentos do país - a FDA - diz que a decisão foi um momento "histórico" e que a medicina agora "entra em uma nova fronteira". A companhia Novar...

Ler Notícia Completa

Cientistas norte-americanos criaram anticorpo capaz de atacar 99% das variações de HIV

Um grupo formado por pesquisadores do Instituto Nacional de Saúde (NIH), dos Estados Unidos, e da empresa farmacêutica Sanofi criaram em laboratório anticorpos superdesenvolvidos capazes de atacar 99% das cepas de HIV. O feito é ainda mais significativo por ser capaz até mesmo de prevenir a infec...

Ler Notícia Completa

Facebook investirá mais de US$ 1 bilhão em conteúdo original em 2018

Anunciada em agosto, a plataforma original de vídeos do Facebook, Watch, parece ser a grande aposta de Mark Zuckerberg para o ano que vem. De acordo com o TechCrunch, a empresa deve investir US$ 1 bilhão para criar e incentivar iniciativas voltadas para a produção de conteúdo audiovisual exclu...

Ler Notícia Completa

Software da Adobe é capaz de manipular gravações de voz e criar frases com perfeição

O software se chama Voco, foi desenvolvido pela Adobe (a mesma criadora do Photoshop) e permite manipular gravações de voz com uma precisão inédita, inclusive criando frases que a pessoa não disse. Na demonstração do app, um técnico forjou uma gravação em que um homem dizia “eu beijei a Jordan...

Ler Notícia Completa

Games nos Jogos Olímpicos de 2024. Será?

Sabe aquela discussão sobre os jogos eletrônicos poderem ou não ser considerados esportes? Pois o comitê responsável pela realização dos Jogos Olímpicos de 2024 acaba de colocar mais um pouco de lenha nesta fogueira. Isso aconteceu através da divulgação de que eles gostariam de incorporar torne...

Ler Notícia Completa

Algoritmo de Inteligência artificial sabe quando você está sonhando

Pesquisadores da Divisão de Medicina do Sono do Hospital Geral de Massachusetts desenvolveram um algoritmo capaz de identificar quando uma pessoa está sonhando. A tecnologia usa sinais de rádio frequência, através de um dispositivo semelhante a um roteador Wi-Fi, para monitorar a pessoa durante...

Ler Notícia Completa

Equipamentos hospitalares podem ser facilmente hackeados, afirma o governo dos EUA

A equipe de emergências digitais de sistemas de controle industrial dos EUA (ICS-CERT) emitiu ontem um alerta chamando atenção para falhas de segurança em alguns equipamentos hospitalares. As brechas são bastante graves, tanto que, segundo o comunicado, "um atacante com pouca habilidade poderia...

Ler Notícia Completa
Você gostará destes vídeos: