Estou me preparando para a prova e me deparei com a seguinte situação:
sei que uma classe que possui variáveis de instância que são referências a objetos caracterizam um relacionamento TEM-UM. Minha dúvida é a seguinte: uma classe que não possua nenhuma variável de instância de referência e apresenta métodos que possuam variáveis de referência locais, caracteriza o relacionamento TEM-UM?
Que eu saiba o relacionamenteo TEM-UM é somente para variaveis de instancia.
Já que as variaveis locais poderão ser coletadas pelo coletor de lixo ao final da execução do método assim o objeto NÃO TERÁ mais aquele objeto, violando o relacionamento TEM-UM.
Repare que após a execução do método1, a variavei local Porta dentro método não poderá ser acessada por nenhum código fora do método, perdendo assim uma referência àquela porta. Portanto viola o relacionamento TEM-UM
Se eu estiver errado me corrijam.
H
Higor
Lembrando que métodos não são coletados pelo GC e sim objetos.
Abraços.
F
fernandoeick
E para métodos, não?
Penso eu que, como os membros de uma classe são as variáveis de instância e os métodos, logo o que caracteriza o relacionamento TEM-UM são além das variáveis de instância, também os métodos.
L
LPJava
Não… as varaiaveis locais existem apenas temporariamente… o relacionamento TEM-UM… é aquilo que uma classe realmente possui… no mundo real… um carro ele realmente precisa TER-UMA roda… porem em algum metodo local o carro pode ter ou nao um som…
veja em codigo:
entendeu? A essencia de TEM-UM? Meu fusquinha quando comprei ele nao veio com som nao… porem as rodas está no relacionamento TEM-UM do meu fusquinha!!
flw!
R
rmala_ti
Não… as varaiaveis locais existem apenas temporariamente… o relacionamento TEM-UM… é aquilo que uma classe realmente possui… no mundo real… um carro ele realmente precisa TER-UMA roda… porem em algum metodo local o carro pode ter ou nao um som…
veja em codigo:
entendeu? A essencia de TEM-UM? Meu fusquinha quando comprei ele nao veio com som nao… porem as rodas está no relacionamento TEM-UM do meu fusquinha!!
flw!
É então resumindo, o relacionamento TEM-UM, só é válido para variáveis de instância.
Não é válido, para variáveis locais ou métodos de instância
Foi isso mesmo que eu entendi?