Jump to content

Falcon89

Members
  • Content count

    1
  • Joined

  • Last visited

Everything posted by Falcon89

  1. Falcon89

    POO dúvida

    Antes de minha dúvida, deixo algumas considerações: - Estou em nível de aprendizagem, então, talvez a idéia e o script possa parecer bem "amador" - A dúvida não corresponde nada a função ou biblioteca Date, o ano utilizado é ficticio, no caso começando no ano de valor 1; - A minha dúvida se relaciona a POO, a utilização do Python como ilustração é meramente ilustrativa. Vamos a dúvida: Então eu criei uma classe chamada tempo com atributo ano, e uma classe pessoa com apenas os atributos em questão, a data de nascimento e a idade. O que eu queria que acontecesse, se possivel, era que ao instanciar uma nova pessoa, ela pegasse o ano atual do objeto 'tempo' já instanciado, e jogasse como ano de nascimento, e já setasse a idade da pessoa, subtraindo o ano atual do objeto tempo pela data de nascimento, fica meio confuso para explicar vou tentar dar um exemplo: Supondo que criei o 'tempoObj', que tem o valor do 'tempoObj.ano=1', nesse periodo eu instancio um objeto 'pessoaObj', então eu queria que essa pessoa pegasse o valor do ano que no caso seria 1 e jogasse na "pessoaObj.data_nascimento"que agora teria o valor de 1 e ano atual que também seria o mesmo valor e já setando atravéz da subtração a 'pessoaObj.idade' como 0, em tempo de execução, chamando a funçao avancar_ano() umas 3 vezes, o valor do ano atual seria 'tempoObj.ano = 4', nesse caso a idade dessa pessoa teria que seria 3, porem ao passar "tempoObj.ano" como argumento para data de nascimento e ano atual, ele sempre irá passar o mesmo valor para ambos fazendo com que a idade sempre seja 0. Nesse caso existe alguma forma que o valor seja passado para o metodo data_nascimento, some ao instanciar a classe pessoa, e o que o valor recebido so ano do tempoObj seja correspondente ao ano que esta armazenado no tempoObj.ano no momento de execução. Já tentei varias formas e sempre chego na mesma, se ficou entendido a questão e se é que existe uma solução, alguém tem essa solução? Desde já agradeço, e peço desculpa se não fui tão claro ao apresentar o problema.
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.