Conceito de extensão, derivação, implementação

1 resposta Resolvido
ProgramadorBR

image
Obs.: não quero a resposta, quer apenas entender.
Poderia dar um exemplo?

Penso que seja derivação por “derivar” os atributos e métodos - um conceito de reutilização.
Superclasse generalista e subclasse especialista.

1 Resposta

peczenyj
Solucao aceita

A pode ser Object.

B pode ser String.

uma String É UM Objeto.

se vc olhar aqui:

https://docs.oracle.com/javase/7/docs/api/java/lang/String.html

vai ver que alguns metodos vem direto de Object como

wait:

https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html#wait()

no java vc pode usar qualquer objeto como Lock, inclusive ele mesmo ( metodo/block syncronized ). quando vc ver Threads e Programação Concorrente vc vai ver.

outro exemplo: finalize

https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html#finalize()

provavelmente o finalize da String não faz nada, como do Object. mas vc pode querer liberar recursos quando um dado objeto for recolhido pelo garbage collector.

então, existem comportamentos definidos em Object que a String vai utilizar. E a String em si define novos comportamentos e adiciona novos metodos.

podemos dizer que String é derivada de Object nesse caso. ficou claro?

Criado 31 de outubro de 2018
Ultima resposta 31 de out. de 2018
Respostas 1
Participantes 2