Digamos que eu tenha um objeto com três métodos, quando dou o new para instânciar estou reservado espaço de memória para todo o objeto, ou a jvm aloca memória quando acesso um método ou outro?
Quando instâncio um objeto, estou carregando TODO o objeto na memória ou apenas métodos acessados?
2 Respostas
Eu acho que é o objeto todo.
Só que, se for um método static, eu já fico meio confuso.
B
Programas usam dois espaços de memória, um para guardar o código a ser executado, e outro para as variáveis.
O espaço do código é o mesmo para todas as instâncias do objeto de uma mesma classe.
O espaço de variáveis de instância são independentes entre cada objeto.
Variáveis de classe são a exceção, ficam num espaço de variáveis, mas é compartilhado por todos os objetos da classe.
Infelizmente não sei dizer se o código de todas as classes é carregado todo de uma vez quando o programa é executado, ou se é somente quando usado. Porém, a memória p/ objetos é somente alocada qdo eles forem instanciados.
Criado 20 de junho de 2008
Ultima resposta 20 de jun. de 2008
Respostas 2
Participantes 3
Alura Sistemas operacionais: entenda seu conceito e suas funções Descubra o que são sistemas operacionais, suas funções e tipos. Aprenda tudo de forma clara e objetiva. Não perca tempo!
Casa do Codigo Orientacao a Objetos: Aprenda seus conceitos e suas... Por Thiago Leite e Carvalho — Casa do Codigo