O implícita
característica de um programa orientado a objetos é abstração
. A abstração é a especificação de um tipo abstrato de dados, que inclui uma especificação do tipo de representação de dados
e comportamento
. Em particular,
Para nossos propósitos, um tipo abstrato de dados é um novo tipo (não intrínseca à linguagem).
Não é um dos tipos de dados primitivos que são construídos em linguagem de programação (como int, long, float, etc.).
A distinção no parágrafo anterior é muito importante. A representação de dados e comportamento dos tipos intrínsecos ou primitivas já é conhecido para o compilador e não pode ser modificada pelo programador.
A representação e comportamento de um tipo de sumário não é conhecida para o compilador até que seja especificado pela o programador e apresentado ao compilador de forma adequada.
Como é que vamos apresentar a especificação de um tipo abstrato para o compilador? ++ Programadores Java e C define os representação de dados
e os comportamento
de um novo tipo (apresentar a especificação para o compilador), utilizando a palavra-chave classe
(programadores C ++ também pode use as palavras-chave struct
e união
).
Em outras palavras, em Java e C ++, a palavra-chave classe
é usado para converter a especificação de um novo tipo em algo que o compilador pode trabalhar com; um conjunto de planos
como se fosse.
Outros idiomas podem usar diferentes mecanismos para apresentar a especificação do tipo abstrato para o compilador.
Uma vez que o novo tipo é definido , um ou mais objetos desse tipo pode ser posta em sendo (instanciado, causou a ocupar memória).
Uma vez instanciado, o objeto é dito ter estado
e comportamento
.
O
estado de um objeto é determinada pelos valores atuais de seus dados (variáveis de instância) e os
comportamento de um objeto é determinada pelos seus métodos (funções de membro ou métodos de instância).
Por exemplo, novamente tomando algumas liberdades, se visualizar um botão GUI como um objeto, é bastante fácil de visualizar estado e comportamento.
Um botão GUI geralmente pode manifestar qualquer um de uma série de estados dif