marcos_regato Postado Março 18, 2015 Denunciar Share Postado Março 18, 2015 Boa tarde. Qual é a diferença entre "class Teste(object)" e "class Test:" ? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ArteEN Postado Março 18, 2015 Denunciar Share Postado Março 18, 2015 Olha vale esperar uma resposta com mais firmeza Mas pelo o que eu compreendi de quando estava estudando é que no final não faz diferenças, pois todas as classes herdam da classe objeto. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Março 18, 2015 Denunciar Share Postado Março 18, 2015 Qual é a diferença entre "class Teste(object)" e "class Test:" ? Classes são como moldes a partir dos quais criamos objetos. Uma classe representa a definição de quais métodos e variáveis de uma instância terá um objeto. Uma classe não é um objeto em si, é a descrição de como serão os objetos de um determinado tipo quando instanciados a partir da especificação da classe. Os objetos reais são obtidos instanciando-se classes predefinidas. Você pode instanciar muitos objetos de uma determinada classe, da mesma forma como pode criar diversos bolos a partir de uma receita. Em Object Pascal, classes são consideradas como tipos de dados compostos e assim definidas. A declaração de uma classe é muito parecida com a declaração de um record onde troca-se a palavra record pela palavra class. É importante chamar a atenção de que o emprego da letra "T" no inicio do nome classe é apenas uma convenção e não obrigatório. Costuma-se prefixar um "T" ao nome de qualquer tipo definido pelo usuário exemplo: Declaração de uma classe bem simples type TPoint = class(TObject) public X: float; /// variáveis de instância Y: float; end; Como mencionado, esta declaração define apenas o molde a partir do qual os verdadeiros objetos serão criados. Existem situações onde a existência de um construtor é fundamental. Um bom exemplo disso é quando o objeto que está sendo instanciado precisa, por sua vez, instanciar outros objetos. exemplo: type TRectangle = class private PointA: TPoint; PointB: TPoint; public construtor Create; { métodos entrariam aqui } end; construtor TRectangle.Create; begin inherited Create; PointA := TPoint.Create; PointB := TPoint.Create; end; Nesse exemplo, a presença de um construtor é de vital importância para garantir que dois objetos TPoint serão instanciados sempre que um objeto da classe TRectangle for instanciado. Caso os objetos não sejam instanciados, quando forem utilizados em outros métodos, dão origem a erros de execução. A utilização de um objeto não instanciado é na maioria das vezes o caminho mais rápido para se conseguir um erro do windows, o GPF ( General Protection Fault ). OBS: Esta definição vale para o Pascal, mas não é muito diferente do Python voce pode pesquisar mais sobre isso nesse link http://translate.google.com.br/translate?hl=pt-BR&sl=en&u=https://docs.python.org/2/tutorial/classes.html&prev=search abraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
marcos_regato
Boa tarde. Qual é a diferença entre "class Teste(object)" e "class Test:" ?
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.