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#:

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:

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:

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".

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 executá-lo:

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:

Vamos à execução desse código:

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:

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.
HARDWARE
Entendendo o seu computador
O que há dentro do meu computador?
Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.
Você Sabia?
Recorde de patentes
A IBM detém o recorde de patentes em um único ano, atingindo a marca de 4186 registros no ano de 2008. Clique aqui e saiba mais sobre esta gigante do mundo da tecnologia.
Playstation
O Playstation só nasceu porque uma parceria entre Sony e Nintendo, para desenvolver uma unidade de CD para o Super Nintendo, fracassou. Clique aqui e saiba mais.
Computadores de 1,5 tonelada
Em 1949 a revista Popular Mechanics fez uma previsão para o futuro, dizendo: "Um dia os computadores pesarão menos do que 1,5 tonelada". E pensar que temos smartphones capazes de realizar milhões de vezes mais operações do que os computadores daquela época.
Senhas
Digitar senhas em computadores de uso coletivo é extremamente perigoso, pois além de softwares de monitoramento, existem dispositivos de hardware que podem capturar suas senhas. Evite ao máximo acessar sites de bancos a partir destes computadores. Veja mais aqui.
Duck Hunt
Ao completar o nível 99 do jogo Duck Hunt, para Nintendo, o jogo retorna ao primeiro nível, mas um bug impede que se acerte os patos neste recomeço. Este é um exemplo do que é chamado no mundo dos games de "Kill Screen".
Final Fantasy
O famoso título Final Fantasy, da Square Enix, tem este nome exatamente porque se tratava da última esperança da empresa, que estava à beira da falência quando o lançou. Clique aqui e conheça detalhes dessa história.
Street Fighter 2
Street Fighter 2, lançado para o Super Nintendo no início dos anos 90, foi o principal responsável pelo aumento nas vendas deste console. Graças ao sucesso do título nos Arcades e à perfeita adaptação ao console, muitos consumidores adquiriram o SNES para jogarem o título em casa. Saiba mais.
PC com barulho?
Excesso de barulho dentro do seu gabinete, principalmente logo que você o liga, pode ser sintoma de problemas nas ventoinhas, que podem precisar ser limpas ou trocadas. Entre em contato com um técnico de sua confiança e verifique isso o quanto antes.
Space Invaders
A partida mais longa do clássico Space Invaders durou incríveis 38 horas e 32 minutos e esta façanha foi conseguida por um jogador de apenas 12 anos! O jogo, claro, podia ser pausado para alimentação e descanso, mas ainda assim o recorde, estabelecido no dia 02/09/1980, ainda não foi quebrado. Saiba mais.
Ultima Online
Criar um jogo é muito mais complexo do que parece. São milhares, às vezes, milhões de linhas de código. Isso não é exagero! Apenas o jogo Ultima Online possui 6.006.313 linhas de programação, totalizando 25.103.295 palavras
Space Invaders
O título Space Invaders, lançado em 1980, fez tanto sucesso em todo o mundo que as pessoas compravam o console Atari apenas para poderem jogá-lo em casa. Saiba mais sobre este incrível título clicando aqui.
Pac Man
Apenas no ano de 1982, o clássico Pac Man vendeu mais de 400 mil máquinas de fliperama em todo o mundo e recebeu cerca de 7 bilhões de moedas nestas máquinas. Saiba mais.