« marzo 2010
lunmarmiéjueviesábdom
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
    
       
Hoy

Publicidad

Creative Commons License 2.0

Technorati Profile

Links

RSS

Blog::Menu

« CodeBook : Seria... | Main | Universidad eIndustr... »
martes oct 28, 2008

public final class

En la wikipedia se explica que es una final class en Java.

Siempre habia creido que se hacia por razones de eficiencia sobre todo aplicado a la clase String, pero no, es para que al no ya que el compilador no tiene ningun problema en optimizar en tiempo de ejecucion las clases que estan cargadas, entonces para que se hace.

En el caso de las variables esta bastante claro que el compilador puede optimizar, pero en el caso de metodos es para que no se cambie el comportamiento.

Discutiendo con un compañero me plantea que se utiliza para cerrar APIs para que nadie sea capaz de mejorar o empeorar la implementacion de algo, y para que sea la empresa encargada de ese API la unica que tenga acceso al mismo.

Ahora tengo un grave dilema, modifico una clase para que deje de ser final y pueda implementar una clase que trabaja diferente con esos metodos, utilizando algunos metodos poco ortodoxos o por el contrario dejo que esa clase imprescindible, siga estando tal y como la encontre.

Voy a ver si con AOP, Bootstrapping y sin recurrir a un decompilador puedo modificarlo, esta es una de las razones por las que me gusta el Open Source y no el codigo cerrado de terceros.

Comentarios:

[Trackback] Ucables connects you to the new world technology

Enviado por UCABLES - Mobile phone unlocking cables, cellphone accessories, repair tools, Nokia, Motorola, Sonyericsson en febrero 21, 2009 a las 03:54 PM GMT+01:00 #

Enviar un comentario:
  • Sintaxis HTML: Deshabilitado
Copyright (C) 2006-2008, Batch for the Java TM

Java, J2EE, and all Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc

This blog is not affiliated in any way with Sun Microsystems, Inc.