Instância (ciência da computação): diferenças entre revisões
m Revertidas edições por Tiago de Jesus Neves para a última versão por 189.61.83.177, de 13h43min de 13 de julho de 2013 (UTC) |
|||
Linha 29: | Linha 29: | ||
gato = new Animal("Felis catus"); |
gato = new Animal("Felis catus"); |
||
lobo = new Animal("Canis lupus"); |
lobo = new Animal("Canis lupus"); |
||
vira-lata = new Animal ("Canis lupus Vira-latis"); |
|||
} |
} |
||
} |
} |
Revisão das 14h39min de 22 de agosto de 2013
Este artigo não cita fontes confiáveis. (Março de 2011) |
Em programação orientada a objetos, chama-se instância de uma classe, um objeto cujo comportamento e estado são definidos pela classe. "Instância" é, neste caso, um anglicismo, significando "caso" ou "exemplo" (em inglês instance).
As instâncias de uma classe compartilham o mesmo conjunto de atributos, embora sejam diferentes quanto ao conteúdo desses atributos. Por exemplo, a classe "Empregado" descreve os atributos comuns a todas as instâncias da classe "Empregado". Os objetos dessa classe podem ser semelhantes, mas variam em atributos tais como "nome" e "salário". A descrição da classe contém os itens correspondentes a esses atributos e define as operações ou ações relevantes para a classe, tais como "aumento de salário" ou "mudança do número de telefone". Pode-se então falar sobre uma instância com o nome = "Joana Coelho" e outra com o nome = "João Coelho".
Instância é a concretização de uma classe. Em termos intuitivos, uma classe é como um "molde" que gera instâncias de um certo tipo; um objeto é algo que existe fisicamente e que foi "moldado" na classe.
Assim, em programação orientada a objetos, a palavra "instanciar" significa criar. Quando falamos em "instanciar um objeto", criamos fisicamente uma representação concreta da classe. Por exemplo: "animal" é uma classe ou um molde; "cachorro" é uma instância de "animal" e apesar de carregar todas as características do molde de "animal", é completamente independente de outras instâncias de "animal". Exemplo em C#:
// Classe
class Animal
{
// Atributo
protected string especie;
// Construtor
public Animal(string especie)
{
this.especie = especie;
}
// Execução
static void Main(string[] args)
{
// Instâncias
cachorro = new Animal("Canis lupus familiaris");
gato = new Animal("Felis catus");
lobo = new Animal("Canis lupus");
vira-lata = new Animal ("Canis lupus Vira-latis");
}
}