Olá, estou fazendo um projeto de uma disciplina na faculdade, e preciso de uma ajuda, pois não mando muito bem em Herança.
Tenho uma classe pai X, e três classes filhas X1, X2 e X3.
A classe X não possui variáveis, só métodos.
E todas as classes filhas tem nelas um objeto Hash.
Posso eu ter um método na classe pai que utilize o hash da filha, para que eu não precise implementar o método em todas as classes filhas?
Qual a melhor maneira de fazer isso? Por uma classe pai abstrata? Também não sei usar direito.
Depende… se as filhas forem bonitas tudo eh possivel
robertol
Você não conseguirá visualizar o objeto Hash na classe pai a menos que este objeto esteja declarado nela.
Se você o utiliza em todas as classes filhas, o correto é declará-lo dentro do escopo da classe pai.
Se não conseguir implementar, posta seu código para podermos te ajudar com mais clareza!
discorpio
Boa tarde a todos.
O mais certo é voce declarar o objeto hash como atributo privado na classe pai e encapsulá-lo com os métodos públicos getter e setter, tudo isto na classe pai, evidentemente.
Outra dica para voce evitar de se criar várias referências desse objeto hash, bem como de evitar o famoso “Null Pointer”, no método getter desse objeto, sempre instancie ele primeiro para depois retorná-lo, assim:
Desta forma voce pode usar despreocupado o método getMeuhash() da classe pai, nas classes filhas, inclusive desta forma a utilizar os métodos do objeto hash encadeados, assim: