Há como declarar a super-classe como abstrata ? Ou seja, ela não pode ser instanciada..
Ótimo tutorial, obrigado por nos trazer mais conhecimento sobre lua ![]()
info
Grupo: Grão-Duque
Registrado: 02/10/06
Posts: 3.3k
Reputação: +151
Gênero: Masculino

Há como declarar a super-classe como abstrata ? Ou seja, ela não pode ser instanciada..
Ótimo tutorial, obrigado por nos trazer mais conhecimento sobre lua ![]()
info
Grupo: Herói
Registrado: 07/03/16
Posts: 1.4k
Reputação: +385
Gênero: Masculino
Gostaria apenas de passar um pouco do que aprendi estudando simulação de poo em lua.
O que vou citar aqui é, à herança herdada por classes.
Primeiro, criamos um método de classe.
Aqui eu usei esse método que herda da classe 'pai' caso exista.
Agora eu criei um objeto usando o método de classe que declarei acima.
Criei duas funções para ela.
Veja que ele não tem uma classe pai declarada, portanto, não vai receber nada.
Agora criei outro objeto e novamente declarei duas outras funções diferentes para ele.
Veja que ele usa como classe pai 'item', portanto, herda dessa classe os metodos declarados na mesma.
Mais um objeto criado com o mesmo método dos demais e com duas funções diferentes declaradas para ela.
Veja que ele usa como classe pai 'shield', ou seja, ela herda os métodos declarados nessa classe.
Cada função usa suas funções declaradas para a mesma.
Agora veja o que é à herança herdada de outras classes.
Agora veja o que fica protegido, ou seja, não pode ser usado por tais objetos.
Demonstrando a herança de funções que foram declaradas em classes anteriores:
Espero que tenha ficado claro como funciona a herança em poo lua.