[Prévia] [Próxima] [Prévia por assunto] [Próxima por assunto]
[Índice cronológico] [Índice de assunto]

Re: Duas dúvidas: uma sobre classloaders sacanas e outra meio off-topic



    Oi pessoal, de novo, :-)

>Ola a todos.
>
>  
>
>Bom, e so um palpite: sera que e possivel criar um classloader que nao delega
>a seus ancestrais? Porque mesmo que o classloader pai seja null, ele delega
>para o boot classloader. O que vi na documentação da Sun:
>
>"Each instance of ClassLoader has an associated parent class loader...
>The virtual machine's built-in class loader, called the "bootstrap class loader",
>does not itself have a parent but may serve as the parent of a ClassLoader
>instance."
>  
>
Quando você escreve um classloader, é recomendável que você siga o 
protocolo de delegação para evitar problemas, mas esse protocolo é algo 
que você, o cara que faz o classloader, implementa - não é um troço 
built-in. Existem algumas aplicações muito úteis para esses classloaders 
- especialmente quando você quer fazer modificação de bytecode.

Este tutorial sobre transformação de classes em tempo de carga com o 
Javassist mostra umas coisas muito legais:

http://www-106.ibm.com/developerworks/java/library/j-dyn0916.html

>Isso parece indicar que o unico classloader sem pai (e que portanto nao delega a
>ninguem) e o boot CL.
>  
>
Isso é verdade.

>Mas se isso for possivel acho que vai dar ClassCastException mesmo.
>  
>
Pode ter certeza. :-)

    Um abraço,

       Giuliano