Existe uma visão um pouco tacanha de orientação a objetos como uma simples maneira de
organizar melhor o seu código. Essa visão é facilmente desmentida pelos conceitos de
encapsulamento, interfaces, packages e outros já apresentados. Neste tópico apresentaremos o
conceito de herança, fundamental para programação orientada a objetos e um dos fatores de sucesso desta como muito mais que uma simples maneira de organizar melhor seu código.
Um dos aspectos que distinguem objetos de procedimentos e funções é que o tempo de
existência de um objeto pode ser maior do que o do objeto que o criou. Isto permite que em
sistemas distribuídos objetos criados em um local, sejam passados através da rede para outro local e armazenados lá quem sabe na memória ou mesmo em um banco de dados.
REDEFINIÇÃO DE MÉTODOS HERDADOS
Uma classe filha pode fornecer uma outra implementação para um método herdado,caracterizando uma redefinição “overriding” de método. Importante: o método deve ter a mesma assinatura (nome, argumentos e valor de retorno), senão não se trata de uma redefinição e sim sobrecarga “overloading”. A redefinição garante que o método terá o mesmo comportamento que o anterior isto faz com que as subclasses possam ser atribuídas a variáveis da superclasse pois atendem a todas as operações desta.
INTERFACES, UMA ALTERNATIVA PARA HERANÇA MÚLTIPLA
Herança múltipla é a capacidade de uma classe herdar de duas ou mais classes, por exemplo a classe radio-relógio herdar da classe rádio e da classe relógio.
Java por motivos de simplicidade, abandona a idéia de herança múltipla, cedendo lugar ao
uso de interfaces. Interfaces são um conjunto de métodos e constantes (não contém atributos). Os métodos definidos na interface são “ocos” ou desprovidos de implementação. Classes podem dizer que implementam uma interface, estabelecendo um compromisso, uma espécie de contrato, com seus clientes no que se refere a prover uma implementação para cada método da referida interface.Ao cliente, pode ser dada a definição da interface, ele acaba não sabendo o que a classe é, mas sabe o que faz. Quem programa em Objective C, deve ver as interfaces como algo semelhante ao conceito de protocolos.
organizar melhor o seu código. Essa visão é facilmente desmentida pelos conceitos de
encapsulamento, interfaces, packages e outros já apresentados. Neste tópico apresentaremos o
conceito de herança, fundamental para programação orientada a objetos e um dos fatores de sucesso desta como muito mais que uma simples maneira de organizar melhor seu código.
Um dos aspectos que distinguem objetos de procedimentos e funções é que o tempo de
existência de um objeto pode ser maior do que o do objeto que o criou. Isto permite que em
sistemas distribuídos objetos criados em um local, sejam passados através da rede para outro local e armazenados lá quem sabe na memória ou mesmo em um banco de dados.
REDEFINIÇÃO DE MÉTODOS HERDADOS
Uma classe filha pode fornecer uma outra implementação para um método herdado,caracterizando uma redefinição “overriding” de método. Importante: o método deve ter a mesma assinatura (nome, argumentos e valor de retorno), senão não se trata de uma redefinição e sim sobrecarga “overloading”. A redefinição garante que o método terá o mesmo comportamento que o anterior isto faz com que as subclasses possam ser atribuídas a variáveis da superclasse pois atendem a todas as operações desta.
INTERFACES, UMA ALTERNATIVA PARA HERANÇA MÚLTIPLA
Herança múltipla é a capacidade de uma classe herdar de duas ou mais classes, por exemplo a classe radio-relógio herdar da classe rádio e da classe relógio.
Java por motivos de simplicidade, abandona a idéia de herança múltipla, cedendo lugar ao
uso de interfaces. Interfaces são um conjunto de métodos e constantes (não contém atributos). Os métodos definidos na interface são “ocos” ou desprovidos de implementação. Classes podem dizer que implementam uma interface, estabelecendo um compromisso, uma espécie de contrato, com seus clientes no que se refere a prover uma implementação para cada método da referida interface.Ao cliente, pode ser dada a definição da interface, ele acaba não sabendo o que a classe é, mas sabe o que faz. Quem programa em Objective C, deve ver as interfaces como algo semelhante ao conceito de protocolos.
Nenhum comentário:
Postar um comentário