Boas,
Sempre que programo preocupo-me muito com a memória do computador, acho que às vezes até me preocupo demais o que me deixa um bocado limitado mas de qualquer maneira a minha questão é esta… vejam o código abaixo:
class A {
void methodX() {}
}
class B extends A{
void methodY() {}
void methodZ() {}
}
Neste caso sempre que eu criar um objecto da classe B também será criado automaticamente um da classe A certo?
Agora vejam este …
class C {
void methodX() {}
void methodY() {}
void methodZ() {}
}
Agora esquecendo o que é correcto ou não de fazer, porque eu sei que é mais facil extender uma classe de outra do que voltar a criar uma com todos os metodos da classe base mais os que quero adicionar, até porque não é essa a ideia da programação orientada a objectos. A minha questão é apenas… se eu criasse um objecto da class B e outro da C, qual deles ocuparia mais espaço na memoria? os exemplos q dei são mto simples mas era para perceberem a ideia, imaginem exemplos mais complexos… o que acham?
Será que o C ocupa o mesmo que o B porque na realizade o B é uma fusão do B+A ? ou será q o B ocupa mais por serem criados dois objectos?
PEACE