Orientação a objetos em Javascript - Herança

Neste segundo post sobre orientação a objetos com Javascript irei demonstrar como utilizar o conceito de herança.

Para se fazer uso de herança em javascript deve-se utilizar a propriedade prototype, os objetos em javascript contém uma propriedade “especial” chamada prototype que permite que seja adicionado métodos e propriedades as classes.

Quando se define um valor para a propriedade prototype, no momento em que se cria uma instância de uma classe em javascript, as propriedades prototypes são acopladas a classe.

O exemplo ira se basear em uma classe chama Pessoa com um atributo nome, seu método get e set e uma classe Amigo com um atributo telefone que irá herdar os atributos e métodos da classe Pessoa.

Primeiro o javascript para a classe Pessoa:

1
2
3
4
5
6
7
8
9
10
11
12
13
function Pessoa() {
  this.nome;
  this.setNome = setNome;
  this.getNome = getNome;

  function setNome(nome) {
    this.nome = nome;
  }

  function getNome() {
    return this.nome;
  }
}

Agora o javascript para a classe Amigo:

1
2
3
4
5
6
7
8
9
10
11
12
13
function Amigo() {
  this.telefone;
  this.getTelefone = getTelefone;
  this.setTelefone = setTelefone;

  function setTelefone(telefone) {
    this.telefone = telefone;
  }

  function getTelefone() {
    return this.telefone;
  }
}

E finalmente o exemplo de como aplicar herança em javascript:

1
2
3
4
5
6
7
Amigo.prototype = new Pessoa();
var amigo = new Amigo();

amigo.setNome("Rodrigo Lazoti");
amigo.setTelefone("1234-4567");

alert(amigo.getNome() +"\n"+ amigo.getTelefone());

comments powered by Disqus