Make private elements final where possible.
diff --git a/src/main/java/org/apache/commons/ognl/ASTMap.java b/src/main/java/org/apache/commons/ognl/ASTMap.java
index ba82048..be5964d 100644
--- a/src/main/java/org/apache/commons/ognl/ASTMap.java
+++ b/src/main/java/org/apache/commons/ognl/ASTMap.java
@@ -33,7 +33,7 @@
 {
     private String className;
 
-    private Map<OgnlContext, Class> defaultMapClassMap = new HashMap<OgnlContext, Class>();
+    private final Map<OgnlContext, Class> defaultMapClassMap = new HashMap<OgnlContext, Class>();
 
     public ASTMap( int id )
     {
diff --git a/src/main/java/org/apache/commons/ognl/ArrayElementsAccessor.java b/src/main/java/org/apache/commons/ognl/ArrayElementsAccessor.java
index ae2c468..cf9a2f6 100644
--- a/src/main/java/org/apache/commons/ognl/ArrayElementsAccessor.java
+++ b/src/main/java/org/apache/commons/ognl/ArrayElementsAccessor.java
@@ -35,7 +35,7 @@
     {
         return new Enumeration<Object>()
         {
-            private int count = Array.getLength( target );
+            private final int count = Array.getLength( target );
 
             private int index = 0;
 
diff --git a/src/main/java/org/apache/commons/ognl/DynamicSubscript.java b/src/main/java/org/apache/commons/ognl/DynamicSubscript.java
index b5f093c..c3e9f45 100644
--- a/src/main/java/org/apache/commons/ognl/DynamicSubscript.java
+++ b/src/main/java/org/apache/commons/ognl/DynamicSubscript.java
@@ -42,7 +42,7 @@
 
     public static final DynamicSubscript all = new DynamicSubscript( ALL );
 
-    private int flag;
+    private final int flag;
 
     private DynamicSubscript( int flag )
     {
diff --git a/src/main/java/org/apache/commons/ognl/IteratorEnumeration.java b/src/main/java/org/apache/commons/ognl/IteratorEnumeration.java
index afc3a25..52d697f 100644
--- a/src/main/java/org/apache/commons/ognl/IteratorEnumeration.java
+++ b/src/main/java/org/apache/commons/ognl/IteratorEnumeration.java
@@ -34,7 +34,7 @@
         return new IteratorEnumeration<E>( iterator );
     }
 
-    private Iterator<T> it;
+    private final Iterator<T> it;
 
     private IteratorEnumeration( Iterator<T> it )
     {
diff --git a/src/main/java/org/apache/commons/ognl/JJTOgnlParserState.java b/src/main/java/org/apache/commons/ognl/JJTOgnlParserState.java
index ed1ccdc..489310a 100644
--- a/src/main/java/org/apache/commons/ognl/JJTOgnlParserState.java
+++ b/src/main/java/org/apache/commons/ognl/JJTOgnlParserState.java
@@ -29,9 +29,9 @@
  */
 public class JJTOgnlParserState
 {
-    private List<Node> nodes;
+    private final List<Node> nodes;
 
-    private List<Integer> marks;
+    private final List<Integer> marks;
 
     private int numNodesOnStack;
 
diff --git a/src/main/java/org/apache/commons/ognl/NumberElementsAccessor.java b/src/main/java/org/apache/commons/ognl/NumberElementsAccessor.java
index 79fa11e..2094104 100644
--- a/src/main/java/org/apache/commons/ognl/NumberElementsAccessor.java
+++ b/src/main/java/org/apache/commons/ognl/NumberElementsAccessor.java
@@ -35,11 +35,11 @@
     {
         return new Enumeration<Object>()
         {
-            private int type = OgnlOps.getNumericType( target );
+            private final int type = OgnlOps.getNumericType( target );
 
             private long next = 0;
 
-            private long finish = OgnlOps.longValue( target );
+            private final long finish = OgnlOps.longValue( target );
 
             public boolean hasMoreElements()
             {
diff --git a/src/main/java/org/apache/commons/ognl/ObjectIndexedPropertyDescriptor.java b/src/main/java/org/apache/commons/ognl/ObjectIndexedPropertyDescriptor.java
index 80f7edf..7d5096b 100644
--- a/src/main/java/org/apache/commons/ognl/ObjectIndexedPropertyDescriptor.java
+++ b/src/main/java/org/apache/commons/ognl/ObjectIndexedPropertyDescriptor.java
@@ -84,11 +84,11 @@
 public class ObjectIndexedPropertyDescriptor
     extends PropertyDescriptor
 {
-    private Method indexedReadMethod;
+    private final Method indexedReadMethod;
 
-    private Method indexedWriteMethod;
+    private final Method indexedWriteMethod;
 
-    private Class<?> propertyType;
+    private final Class<?> propertyType;
 
     public ObjectIndexedPropertyDescriptor( String propertyName, Class<?> propertyType, Method indexedReadMethod,
                                             Method indexedWriteMethod )
diff --git a/src/main/java/org/apache/commons/ognl/OgnlContext.java b/src/main/java/org/apache/commons/ognl/OgnlContext.java
index 2c23beb..ddf7143 100644
--- a/src/main/java/org/apache/commons/ognl/OgnlContext.java
+++ b/src/main/java/org/apache/commons/ognl/OgnlContext.java
@@ -125,9 +125,9 @@
         }
     }
 
-    private Stack<Class<?>> typeStack = new Stack<Class<?>>();
+    private final Stack<Class<?>> typeStack = new Stack<Class<?>>();
 
-    private Stack<Class<?>> accessorStack = new Stack<Class<?>>();
+    private final Stack<Class<?>> accessorStack = new Stack<Class<?>>();
 
     private int localReferenceCounter = 0;
 
diff --git a/src/main/java/org/apache/commons/ognl/OgnlException.java b/src/main/java/org/apache/commons/ognl/OgnlException.java
index 3b4e6f9..82deb81 100644
--- a/src/main/java/org/apache/commons/ognl/OgnlException.java
+++ b/src/main/java/org/apache/commons/ognl/OgnlException.java
@@ -55,7 +55,7 @@
      * 
      * @serial
      */
-    private Throwable reason;
+    private final Throwable reason;
 
     /** Constructs an OgnlException with no message or encapsulated exception. */
     public OgnlException()
diff --git a/src/main/java/org/apache/commons/ognl/PrimitiveWrapperClasses.java b/src/main/java/org/apache/commons/ognl/PrimitiveWrapperClasses.java
index c087078..866e140 100644
--- a/src/main/java/org/apache/commons/ognl/PrimitiveWrapperClasses.java
+++ b/src/main/java/org/apache/commons/ognl/PrimitiveWrapperClasses.java
@@ -27,7 +27,7 @@
  */
 class PrimitiveWrapperClasses {
 
-    private Map<Class<?>, Class<?>> map = new IdentityHashMap<Class<?>, Class<?>>();
+    private final Map<Class<?>, Class<?>> map = new IdentityHashMap<Class<?>, Class<?>>();
 
     PrimitiveWrapperClasses() {
         map.put( Boolean.TYPE, Boolean.class );
diff --git a/src/main/java/org/apache/commons/ognl/internal/ClassCacheImpl.java b/src/main/java/org/apache/commons/ognl/internal/ClassCacheImpl.java
index 5cc1ff3..755ac13 100644
--- a/src/main/java/org/apache/commons/ognl/internal/ClassCacheImpl.java
+++ b/src/main/java/org/apache/commons/ognl/internal/ClassCacheImpl.java
@@ -40,7 +40,7 @@
     /* ...and now you see why. The table size is used as a mask for generating hashes */
     private static final int TABLE_SIZE_MASK = TABLE_SIZE - 1;
 
-    private Entry<Class<?>, V>[] table = new Entry[TABLE_SIZE];
+    private final Entry<Class<?>, V>[] table = new Entry[TABLE_SIZE];
 
     private ClassCacheInspector classInspector;
 
diff --git a/src/main/java/org/apache/commons/ognl/internal/ConcurrentHashMapCache.java b/src/main/java/org/apache/commons/ognl/internal/ConcurrentHashMapCache.java
index 86a195f..e4a5793 100644
--- a/src/main/java/org/apache/commons/ognl/internal/ConcurrentHashMapCache.java
+++ b/src/main/java/org/apache/commons/ognl/internal/ConcurrentHashMapCache.java
@@ -29,7 +29,7 @@
 public class ConcurrentHashMapCache<K, V>
     implements Cache<K, V>
 {
-    private ConcurrentHashMap<K, V> cache = new ConcurrentHashMap<K, V>();
+    private final ConcurrentHashMap<K, V> cache = new ConcurrentHashMap<K, V>();
 
     private CacheEntryFactory<K, V> cacheEntryFactory;
 
diff --git a/src/main/java/org/apache/commons/ognl/internal/HashMapCache.java b/src/main/java/org/apache/commons/ognl/internal/HashMapCache.java
index 5f01f8c..8fe631a 100644
--- a/src/main/java/org/apache/commons/ognl/internal/HashMapCache.java
+++ b/src/main/java/org/apache/commons/ognl/internal/HashMapCache.java
@@ -33,7 +33,7 @@
 {
     private final Map<K, V> cache = new HashMap<K, V>( 512 );
 
-    private CacheEntryFactory<K, V> cacheEntryFactory;
+    private final CacheEntryFactory<K, V> cacheEntryFactory;
 
     public HashMapCache( CacheEntryFactory<K, V> cacheEntryFactory )
     {
diff --git a/src/main/java/org/apache/commons/ognl/internal/entry/MethodAccessEntryValue.java b/src/main/java/org/apache/commons/ognl/internal/entry/MethodAccessEntryValue.java
index dc40d6c..c0e295b 100644
--- a/src/main/java/org/apache/commons/ognl/internal/entry/MethodAccessEntryValue.java
+++ b/src/main/java/org/apache/commons/ognl/internal/entry/MethodAccessEntryValue.java
@@ -25,7 +25,7 @@
 
 public class MethodAccessEntryValue
 {
-    private boolean isAccessible;
+    private final boolean isAccessible;
 
     private boolean notPublic;
 
diff --git a/src/test/java/org/apache/commons/ognl/internal/ConcurrentHashMapCacheTest.java b/src/test/java/org/apache/commons/ognl/internal/ConcurrentHashMapCacheTest.java
index 3af7baa..9614c34 100644
--- a/src/test/java/org/apache/commons/ognl/internal/ConcurrentHashMapCacheTest.java
+++ b/src/test/java/org/apache/commons/ognl/internal/ConcurrentHashMapCacheTest.java
@@ -34,8 +34,8 @@
 
 public class ConcurrentHashMapCacheTest
 {
-    private ConcurrentHashMapCacheTest.DummyEntryFactory entryFactory=new DummyEntryFactory( );
-    private Cache<CacheEntry, List<Method>> cache = new ConcurrentHashMapCache<CacheEntry, List<Method>>( entryFactory );
+    private final ConcurrentHashMapCacheTest.DummyEntryFactory entryFactory=new DummyEntryFactory( );
+    private final Cache<CacheEntry, List<Method>> cache = new ConcurrentHashMapCache<CacheEntry, List<Method>>( entryFactory );
 
 
     @Test
@@ -57,9 +57,9 @@
 
     private class CacheEntry
     {
-        private Class<?> clazz;
+        private final Class<?> clazz;
 
-        private String methodName;
+        private final String methodName;
 
         private CacheEntry( Class<?> clazz, String methodName )
         {
diff --git a/src/test/java/org/apache/commons/ognl/internal/GenericMethodParameterTypeCacheTest.java b/src/test/java/org/apache/commons/ognl/internal/GenericMethodParameterTypeCacheTest.java
index 705d7b3..b600b54 100644
--- a/src/test/java/org/apache/commons/ognl/internal/GenericMethodParameterTypeCacheTest.java
+++ b/src/test/java/org/apache/commons/ognl/internal/GenericMethodParameterTypeCacheTest.java
@@ -37,7 +37,7 @@
  */
 public class GenericMethodParameterTypeCacheTest
 {
-    private ConcurrentHashMapCache<GenericMethodParameterTypeCacheEntry, Class<?>[]> cache =
+    private final ConcurrentHashMapCache<GenericMethodParameterTypeCacheEntry, Class<?>[]> cache =
         new ConcurrentHashMapCache<GenericMethodParameterTypeCacheEntry, Class<?>[]>( new GenericMethodParameterTypeFactory( ) );
 
     @Test
diff --git a/src/test/java/org/apache/commons/ognl/internal/MethodAccessCacheTest.java b/src/test/java/org/apache/commons/ognl/internal/MethodAccessCacheTest.java
index 15fd609..d0938a1 100644
--- a/src/test/java/org/apache/commons/ognl/internal/MethodAccessCacheTest.java
+++ b/src/test/java/org/apache/commons/ognl/internal/MethodAccessCacheTest.java
@@ -36,7 +36,7 @@
  */
 public class MethodAccessCacheTest
 {
-    private Cache<Method, MethodAccessEntryValue> cache =
+    private final Cache<Method, MethodAccessEntryValue> cache =
         new ConcurrentHashMapCache<Method, MethodAccessEntryValue>( new MethodAccessCacheEntryFactory( ) );
 
     @Test
diff --git a/src/test/java/org/apache/commons/ognl/internal/MethodPermCacheTest.java b/src/test/java/org/apache/commons/ognl/internal/MethodPermCacheTest.java
index af7a77e..728c057 100644
--- a/src/test/java/org/apache/commons/ognl/internal/MethodPermCacheTest.java
+++ b/src/test/java/org/apache/commons/ognl/internal/MethodPermCacheTest.java
@@ -35,8 +35,8 @@
  * Time: 12:13 AM
  */
 public class MethodPermCacheTest {
-    private SecurityManager allowAllSecurityManager = new AllowAllSecurityManager();
-    private SecurityManager denyAllSecurityManager = new DenyAllSecurityManager();
+    private final SecurityManager allowAllSecurityManager = new AllowAllSecurityManager();
+    private final SecurityManager denyAllSecurityManager = new DenyAllSecurityManager();
 
     private Cache<Method, Boolean> createCache(SecurityManager securityManager) {
         return new ConcurrentHashMapCache<Method, Boolean>(new MethodPermCacheEntryFactory(securityManager) );
diff --git a/src/test/java/org/apache/commons/ognl/test/ArithmeticAndLogicalOperatorsTest.java b/src/test/java/org/apache/commons/ognl/test/ArithmeticAndLogicalOperatorsTest.java
index 87441b4..73ba053 100644
--- a/src/test/java/org/apache/commons/ognl/test/ArithmeticAndLogicalOperatorsTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/ArithmeticAndLogicalOperatorsTest.java
@@ -33,7 +33,7 @@
     extends OgnlTestCase
 {
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         // Double-valued arithmetic expressions
         { "-1d", new Double( -1 ) },
         { "+1d", new Double( 1 ) },
diff --git a/src/test/java/org/apache/commons/ognl/test/ArrayCreationTest.java b/src/test/java/org/apache/commons/ognl/test/ArrayCreationTest.java
index 2ef8ab2..e448a40 100644
--- a/src/test/java/org/apache/commons/ognl/test/ArrayCreationTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/ArrayCreationTest.java
@@ -35,9 +35,9 @@
     extends OgnlTestCase
 {
 
-    private static Root ROOT = new Root();
+    private static final Root ROOT = new Root();
 
-    private static Object[][] TESTS =
+    private static final Object[][] TESTS =
         {
             // Array creation
             { ROOT, "new String[] { \"one\", \"two\" }", new String[] { "one", "two" } },
diff --git a/src/test/java/org/apache/commons/ognl/test/ArrayElementsTest.java b/src/test/java/org/apache/commons/ognl/test/ArrayElementsTest.java
index d55928d..8656de4 100644
--- a/src/test/java/org/apache/commons/ognl/test/ArrayElementsTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/ArrayElementsTest.java
@@ -34,13 +34,13 @@
     extends OgnlTestCase
 {
 
-    private static String[] STRING_ARRAY = new String[] { "hello", "world" };
+    private static final String[] STRING_ARRAY = new String[] { "hello", "world" };
 
-    private static int[] INT_ARRAY = new int[] { 10, 20 };
+    private static final int[] INT_ARRAY = new int[] { 10, 20 };
 
-    private static Root ROOT = new Root();
+    private static final Root ROOT = new Root();
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         // Array elements test
         { STRING_ARRAY, "length", 2 },
         { STRING_ARRAY, "#root[1]", "world" },
diff --git a/src/test/java/org/apache/commons/ognl/test/ClassMethodTest.java b/src/test/java/org/apache/commons/ognl/test/ClassMethodTest.java
index 5a02357..943a361 100644
--- a/src/test/java/org/apache/commons/ognl/test/ClassMethodTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/ClassMethodTest.java
@@ -34,9 +34,9 @@
     extends OgnlTestCase
 {
 
-    private static CorrectedObject CORRECTED = new CorrectedObject();
+    private static final CorrectedObject CORRECTED = new CorrectedObject();
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         // Methods on Class
         { CORRECTED, "getClass().getName()", CORRECTED.getClass().getName() },
         { CORRECTED, "getClass().getInterfaces()", CORRECTED.getClass().getInterfaces() },
diff --git a/src/test/java/org/apache/commons/ognl/test/CollectionDirectPropertyTest.java b/src/test/java/org/apache/commons/ognl/test/CollectionDirectPropertyTest.java
index f998a61..8647e31 100644
--- a/src/test/java/org/apache/commons/ognl/test/CollectionDirectPropertyTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/CollectionDirectPropertyTest.java
@@ -33,9 +33,9 @@
     extends OgnlTestCase
 {
 
-    private static Root ROOT = new Root();
+    private static final Root ROOT = new Root();
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         // Collection direct properties
         { Arrays.asList( "hello", "world" ), "size", 2 },
         { Arrays.asList( "hello", "world" ), "isEmpty", Boolean.FALSE },
diff --git a/src/test/java/org/apache/commons/ognl/test/CompilingPropertyAccessor.java b/src/test/java/org/apache/commons/ognl/test/CompilingPropertyAccessor.java
index a85d32f..4138d43 100644
--- a/src/test/java/org/apache/commons/ognl/test/CompilingPropertyAccessor.java
+++ b/src/test/java/org/apache/commons/ognl/test/CompilingPropertyAccessor.java
@@ -45,9 +45,9 @@
     extends ObjectPropertyAccessor
 {
 
-    private static NameFactory NAME_FACTORY = new NameFactory( "ognl.PropertyAccessor", "v" );
+    private static final NameFactory NAME_FACTORY = new NameFactory( "ognl.PropertyAccessor", "v" );
 
-    private static Getter NotFoundGetter = new Getter()
+    private static final Getter NOT_FOUND_GETTER = new Getter()
     {
 
         public Object get( OgnlContext context, Object target, String propertyName )
@@ -56,7 +56,7 @@
         }
     };
 
-    private static Getter DefaultGetter = new Getter()
+    private static final Getter DEFAULT_GETTER = new Getter()
     {
 
         public Object get( OgnlContext context, Object target, String propertyName )
@@ -72,13 +72,13 @@
         }
     };
 
-    private static Map pools = new HashMap();
+    private static final Map POOLS = new HashMap();
 
-    private static Map loaders = new HashMap();
+    private static final Map LOADERS = new HashMap();
 
-    private static java.util.IdentityHashMap PRIMITIVE_WRAPPER_CLASSES = new IdentityHashMap();
+    private static final java.util.IdentityHashMap PRIMITIVE_WRAPPER_CLASSES = new IdentityHashMap();
 
-    private java.util.IdentityHashMap seenGetMethods = new java.util.IdentityHashMap();
+    private final java.util.IdentityHashMap seenGetMethods = new java.util.IdentityHashMap();
 
     static
     {
@@ -117,8 +117,8 @@
 
         try
         {
-            ClassPool pool = (ClassPool) pools.get( context.getClassResolver() );
-            EnhancedClassLoader loader = (EnhancedClassLoader) loaders.get( context.getClassResolver() );
+            ClassPool pool = (ClassPool) POOLS.get( context.getClassResolver() );
+            EnhancedClassLoader loader = (EnhancedClassLoader) LOADERS.get( context.getClassResolver() );
             CtClass newClass;
             CtClass ognlContextClass;
             CtClass objectClass;
@@ -133,10 +133,10 @@
 
                 pool = ClassPool.getDefault();
                 pool.insertClassPath( new LoaderClassPath( classLoader ) );
-                pools.put( context.getClassResolver(), pool );
+                POOLS.put( context.getClassResolver(), pool );
 
                 loader = new EnhancedClassLoader( classLoader );
-                loaders.put( context.getClassResolver(), loader );
+                LOADERS.put( context.getClassResolver(), loader );
             }
 
             newClass = pool.makeClass( className );
@@ -227,12 +227,12 @@
                     }
                     else
                     {
-                        propertyMap.put( propertyName, result = DefaultGetter );
+                        propertyMap.put( propertyName, result = DEFAULT_GETTER );
                     }
                 }
                 else
                 {
-                    propertyMap.put( propertyName, result = NotFoundGetter );
+                    propertyMap.put( propertyName, result = NOT_FOUND_GETTER );
                 }
             }
             catch ( Exception ex )
@@ -256,7 +256,7 @@
         {
             Getter getter = getGetter( ognlContext, target, name );
 
-            if ( getter != NotFoundGetter )
+            if ( getter != NOT_FOUND_GETTER )
             {
                 result = getter.get( ognlContext, target, name );
             }
diff --git a/src/test/java/org/apache/commons/ognl/test/ConstantTest.java b/src/test/java/org/apache/commons/ognl/test/ConstantTest.java
index 1230708..34e627a 100644
--- a/src/test/java/org/apache/commons/ognl/test/ConstantTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/ConstantTest.java
@@ -35,7 +35,7 @@
     extends OgnlTestCase
 {
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         { "12345", new Integer( 12345 ) },
         { "0x100", new Integer( 256 ) },
         { "0xfE", new Integer( 254 ) },
diff --git a/src/test/java/org/apache/commons/ognl/test/ConstantTreeTest.java b/src/test/java/org/apache/commons/ognl/test/ConstantTreeTest.java
index 7081544..0f4723d 100644
--- a/src/test/java/org/apache/commons/ognl/test/ConstantTreeTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/ConstantTreeTest.java
@@ -36,7 +36,7 @@
 
     public static int nonFinalStaticVariable = 15;
 
-    private static Object[][] TESTS = { { "true", Boolean.TRUE }, { "55", Boolean.TRUE },
+    private static final Object[][] TESTS = { { "true", Boolean.TRUE }, { "55", Boolean.TRUE },
         { "@java.awt.Color@black", Boolean.TRUE },
         { "@org.apache.commons.ognl.test.ConstantTreeTest@nonFinalStaticVariable", Boolean.FALSE },
         { "@org.apache.commons.ognl.test.ConstantTreeTest@nonFinalStaticVariable + 10", Boolean.FALSE },
diff --git a/src/test/java/org/apache/commons/ognl/test/ContextVariableTest.java b/src/test/java/org/apache/commons/ognl/test/ContextVariableTest.java
index 59a6f05..9801751 100644
--- a/src/test/java/org/apache/commons/ognl/test/ContextVariableTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/ContextVariableTest.java
@@ -32,9 +32,9 @@
     extends OgnlTestCase
 {
 
-    private static Object ROOT = new Simple();
+    private static final Object ROOT = new Simple();
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         // Naming and referring to names
         { "#root", ROOT }, // Special root reference
         { "#this", ROOT }, // Special this reference
diff --git a/src/test/java/org/apache/commons/ognl/test/CorrectedObjectNullHandler.java b/src/test/java/org/apache/commons/ognl/test/CorrectedObjectNullHandler.java
index 9822fc0..18257de 100644
--- a/src/test/java/org/apache/commons/ognl/test/CorrectedObjectNullHandler.java
+++ b/src/test/java/org/apache/commons/ognl/test/CorrectedObjectNullHandler.java
@@ -27,7 +27,7 @@
     extends Object
     implements NullHandler
 {
-    private String defaultValue;
+    private final String defaultValue;
 
     /*
      * =================================================================== Constructors
diff --git a/src/test/java/org/apache/commons/ognl/test/IndexAccessTest.java b/src/test/java/org/apache/commons/ognl/test/IndexAccessTest.java
index 62ea8c8..dcac773 100644
--- a/src/test/java/org/apache/commons/ognl/test/IndexAccessTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/IndexAccessTest.java
@@ -35,11 +35,11 @@
     extends OgnlTestCase
 {
 
-    private static Root ROOT = new Root();
+    private static final Root ROOT = new Root();
 
-    private static IndexedSetObject INDEXED_SET = new IndexedSetObject();
+    private static final IndexedSetObject INDEXED_SET = new IndexedSetObject();
 
-    private static Object[][] TESTS =
+    private static final Object[][] TESTS =
         {
             { ROOT, "list[index]", ROOT.getList().get( ROOT.getIndex() ) },
             { ROOT, "list[objectIndex]", ROOT.getList().get( ROOT.getObjectIndex().intValue() ) },
diff --git a/src/test/java/org/apache/commons/ognl/test/IndexedPropertyTest.java b/src/test/java/org/apache/commons/ognl/test/IndexedPropertyTest.java
index 3be7d95..157c963 100644
--- a/src/test/java/org/apache/commons/ognl/test/IndexedPropertyTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/IndexedPropertyTest.java
@@ -33,11 +33,11 @@
     extends OgnlTestCase
 {
 
-    private static Indexed INDEXED = new Indexed();
+    private static final Indexed INDEXED = new Indexed();
 
-    private static Root ROOT = new Root();
+    private static final Root ROOT = new Root();
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         // Indexed properties
         { INDEXED, "getValues", INDEXED.getValues() }, // gets String[]
         { INDEXED, "[\"values\"]", INDEXED.getValues() }, // String[]
diff --git a/src/test/java/org/apache/commons/ognl/test/InheritedMethodsTest.java b/src/test/java/org/apache/commons/ognl/test/InheritedMethodsTest.java
index 24d05af..b1bff70 100644
--- a/src/test/java/org/apache/commons/ognl/test/InheritedMethodsTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/InheritedMethodsTest.java
@@ -38,7 +38,7 @@
     extends TestCase
 {
 
-    private static Root ROOT = new Root();
+    private static final Root ROOT = new Root();
 
     public void test_Base_Inheritance()
         throws Exception
diff --git a/src/test/java/org/apache/commons/ognl/test/InterfaceInheritanceTest.java b/src/test/java/org/apache/commons/ognl/test/InterfaceInheritanceTest.java
index 91e32fc..d64ca51 100644
--- a/src/test/java/org/apache/commons/ognl/test/InterfaceInheritanceTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/InterfaceInheritanceTest.java
@@ -41,7 +41,7 @@
     extends OgnlTestCase
 {
 
-    private static Root ROOT = new Root();
+    private static final Root ROOT = new Root();
 
     static
     {
@@ -54,7 +54,7 @@
         ROOT.getMap().put( "customList", list );
     }
 
-    private static Object[][] TESTS = { { ROOT, "myMap", ROOT.getMyMap() }, { ROOT, "myMap.test", ROOT },
+    private static final Object[][] TESTS = { { ROOT, "myMap", ROOT.getMyMap() }, { ROOT, "myMap.test", ROOT },
         { ROOT.getMyMap(), "list", ROOT.getList() }, { ROOT, "myMap.array[0]", new Integer( ROOT.getArray()[0] ) },
         { ROOT, "myMap.list[1]", ROOT.getList().get( 1 ) }, { ROOT, "myMap[^]", new Integer( 99 ) },
         { ROOT, "myMap[$]", null },
diff --git a/src/test/java/org/apache/commons/ognl/test/LambdaExpressionTest.java b/src/test/java/org/apache/commons/ognl/test/LambdaExpressionTest.java
index f0d2d0d..e7a1014 100644
--- a/src/test/java/org/apache/commons/ognl/test/LambdaExpressionTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/LambdaExpressionTest.java
@@ -34,7 +34,7 @@
     extends OgnlTestCase
 {
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         // Lambda expressions
         { null, "#a=:[33](20).longValue().{0}.toArray().length", new Integer( 33 ) },
         { null, "#fact=:[#this<=1? 1 : #fact(#this-1) * #this], #fact(30)", new Integer( 1409286144 ) },
diff --git a/src/test/java/org/apache/commons/ognl/test/MapCreationTest.java b/src/test/java/org/apache/commons/ognl/test/MapCreationTest.java
index ea76028..0317b62 100644
--- a/src/test/java/org/apache/commons/ognl/test/MapCreationTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/MapCreationTest.java
@@ -31,43 +31,43 @@
     extends OgnlTestCase
 {
 
-    private static Root ROOT = new Root();
+    private static final Root ROOT = new Root();
 
-    private static Map fooBarMap1;
+    private static final Map FOO_BAR_MAP_1;
 
-    private static Map fooBarMap2;
+    private static final Map FOO_BAR_MAP_2;
 
-    private static Map fooBarMap3;
+    private static final Map FOO_BAR_MAP_3;
 
-    private static Map fooBarMap4;
+    private static final Map FOO_BAR_MAP_4;
 
-    private static Map fooBarMap5;
+    private static final Map FOO_BAR_MAP_5;
 
     static
     {
-        fooBarMap1 = new HashMap();
-        fooBarMap1.put( "foo", "bar" );
-        fooBarMap2 = new HashMap();
-        fooBarMap2.put( "foo", "bar" );
-        fooBarMap2.put( "bar", "baz" );
-        fooBarMap3 = new HashMap();
-        fooBarMap3.put( "foo", null );
-        fooBarMap3.put( "bar", "baz" );
-        fooBarMap4 = new LinkedHashMap();
-        fooBarMap4.put( "foo", "bar" );
-        fooBarMap4.put( "bar", "baz" );
-        fooBarMap5 = new TreeMap();
-        fooBarMap5.put( "foo", "bar" );
-        fooBarMap5.put( "bar", "baz" );
+        FOO_BAR_MAP_1 = new HashMap();
+        FOO_BAR_MAP_1.put( "foo", "bar" );
+        FOO_BAR_MAP_2 = new HashMap();
+        FOO_BAR_MAP_2.put( "foo", "bar" );
+        FOO_BAR_MAP_2.put( "bar", "baz" );
+        FOO_BAR_MAP_3 = new HashMap();
+        FOO_BAR_MAP_3.put( "foo", null );
+        FOO_BAR_MAP_3.put( "bar", "baz" );
+        FOO_BAR_MAP_4 = new LinkedHashMap();
+        FOO_BAR_MAP_4.put( "foo", "bar" );
+        FOO_BAR_MAP_4.put( "bar", "baz" );
+        FOO_BAR_MAP_5 = new TreeMap();
+        FOO_BAR_MAP_5.put( "foo", "bar" );
+        FOO_BAR_MAP_5.put( "bar", "baz" );
     }
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         // Map creation
-        { ROOT, "#{ \"foo\" : \"bar\" }", fooBarMap1 },
-        { ROOT, "#{ \"foo\" : \"bar\", \"bar\" : \"baz\"  }", fooBarMap2 },
-        { ROOT, "#{ \"foo\", \"bar\" : \"baz\"  }", fooBarMap3 },
-        { ROOT, "#@java.util.LinkedHashMap@{ \"foo\" : \"bar\", \"bar\" : \"baz\"  }", fooBarMap4 },
-        { ROOT, "#@java.util.TreeMap@{ \"foo\" : \"bar\", \"bar\" : \"baz\"  }", fooBarMap5 },
+        { ROOT, "#{ \"foo\" : \"bar\" }", FOO_BAR_MAP_1 },
+        { ROOT, "#{ \"foo\" : \"bar\", \"bar\" : \"baz\"  }", FOO_BAR_MAP_2 },
+        { ROOT, "#{ \"foo\", \"bar\" : \"baz\"  }", FOO_BAR_MAP_3 },
+        { ROOT, "#@java.util.LinkedHashMap@{ \"foo\" : \"bar\", \"bar\" : \"baz\"  }", FOO_BAR_MAP_4 },
+        { ROOT, "#@java.util.TreeMap@{ \"foo\" : \"bar\", \"bar\" : \"baz\"  }", FOO_BAR_MAP_5 },
 
     };
 
diff --git a/src/test/java/org/apache/commons/ognl/test/MemberAccessTest.java b/src/test/java/org/apache/commons/ognl/test/MemberAccessTest.java
index 9bf13d6..3da98ba 100644
--- a/src/test/java/org/apache/commons/ognl/test/MemberAccessTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/MemberAccessTest.java
@@ -38,9 +38,9 @@
     extends OgnlTestCase
 {
 
-    private static Simple ROOT = new Simple();
+    private static final Simple ROOT = new Simple();
 
-    private static Object[][] TESTS = { { "@Runtime@getRuntime()", OgnlException.class },
+    private static final Object[][] TESTS = { { "@Runtime@getRuntime()", OgnlException.class },
         { "@System@getProperty('java.specification.version')", System.getProperty( "java.specification.version" ) },
         { "bigIntValue", OgnlException.class },
         { "bigIntValue", OgnlException.class, 25, OgnlException.class },
diff --git a/src/test/java/org/apache/commons/ognl/test/MethodTest.java b/src/test/java/org/apache/commons/ognl/test/MethodTest.java
index cf54b49..a8365bb 100644
--- a/src/test/java/org/apache/commons/ognl/test/MethodTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/MethodTest.java
@@ -32,13 +32,13 @@
     extends OgnlTestCase
 {
 
-    private static Simple ROOT = new Simple();
+    private static final Simple ROOT = new Simple();
 
-    private static ListSource LIST = new ListSourceImpl();
+    private static final ListSource LIST = new ListSourceImpl();
 
-    private static BaseGeneric<GameGenericObject, Long> GENERIC = new GameGeneric();
+    private static final BaseGeneric<GameGenericObject, Long> GENERIC = new GameGeneric();
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         { "hashCode()", new Integer( ROOT.hashCode() ) },
         { "getBooleanValue() ? \"here\" : \"\"", "" }, { "getValueIsTrue(!false) ? \"\" : \"here\" ", "" },
         { "messages.format('ShowAllCount', new Object[]{one,two})", "foo" },
diff --git a/src/test/java/org/apache/commons/ognl/test/MethodWithConversionTest.java b/src/test/java/org/apache/commons/ognl/test/MethodWithConversionTest.java
index 7aa8423..7891ed0 100644
--- a/src/test/java/org/apache/commons/ognl/test/MethodWithConversionTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/MethodWithConversionTest.java
@@ -33,9 +33,9 @@
     extends OgnlTestCase
 {
 
-    private static Simple SIMPLE = new Simple();
+    private static final Simple SIMPLE = new Simple();
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         // Method call with conversion
         { SIMPLE, "setValues(new Integer(10), \"10.56\", new Double(34.225))", null }, { SIMPLE, "stringValue", "10" },
         { SIMPLE, "stringValue", "10", new Character( 'x' ), "x" },
diff --git a/src/test/java/org/apache/commons/ognl/test/NestedMethodTest.java b/src/test/java/org/apache/commons/ognl/test/NestedMethodTest.java
index 2ed9c0d..ecbe6a8 100644
--- a/src/test/java/org/apache/commons/ognl/test/NestedMethodTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/NestedMethodTest.java
@@ -33,9 +33,9 @@
     extends OgnlTestCase
 {
 
-    private static Component COMPONENT = new Component();
+    private static final Component COMPONENT = new Component();
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         // Expression in a method call argument
         { COMPONENT, "toDisplay.pictureUrl", COMPONENT.getToDisplay().getPictureUrl() },
         { COMPONENT, "page.createRelativeAsset(toDisplay.pictureUrl)",
diff --git a/src/test/java/org/apache/commons/ognl/test/NullHandlerTest.java b/src/test/java/org/apache/commons/ognl/test/NullHandlerTest.java
index 42b3f53..d97ffa2 100644
--- a/src/test/java/org/apache/commons/ognl/test/NullHandlerTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/NullHandlerTest.java
@@ -34,9 +34,9 @@
 public class NullHandlerTest
     extends OgnlTestCase
 {
-    private static CorrectedObject CORRECTED = new CorrectedObject();
+    private static final CorrectedObject CORRECTED = new CorrectedObject();
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         // NullHandler
         { CORRECTED, "stringValue", "corrected" }, { CORRECTED, "getStringValue()", "corrected" },
         { CORRECTED, "#root.stringValue", "corrected" }, { CORRECTED, "#root.getStringValue()", "corrected" }, };
diff --git a/src/test/java/org/apache/commons/ognl/test/NullStringCatenationTest.java b/src/test/java/org/apache/commons/ognl/test/NullStringCatenationTest.java
index 557a37f..6ff2094 100644
--- a/src/test/java/org/apache/commons/ognl/test/NullStringCatenationTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/NullStringCatenationTest.java
@@ -35,9 +35,9 @@
 
     public static final String MESSAGE = "blarney";
 
-    private static Root ROOT = new Root();
+    private static final Root ROOT = new Root();
 
-    private static Object[][] TESTS =
+    private static final Object[][] TESTS =
     {
         // Null string catenation
         { ROOT, "\"bar\" + null", "barnull" }, // Catenate null to a string
diff --git a/src/test/java/org/apache/commons/ognl/test/NumberFormatExceptionTest.java b/src/test/java/org/apache/commons/ognl/test/NumberFormatExceptionTest.java
index bfba53a..7720c2d 100644
--- a/src/test/java/org/apache/commons/ognl/test/NumberFormatExceptionTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/NumberFormatExceptionTest.java
@@ -34,9 +34,9 @@
 public class NumberFormatExceptionTest
     extends OgnlTestCase
 {
-    private static Simple SIMPLE = new Simple();
+    private static final Simple SIMPLE = new Simple();
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         // NumberFormatException handling (default is to throw NumberFormatException on bad string conversions)
         { SIMPLE, "floatValue", 0f, 10f, 10f },
         { SIMPLE, "floatValue", 10f, "x10x", OgnlException.class },
diff --git a/src/test/java/org/apache/commons/ognl/test/NumericConversionTest.java b/src/test/java/org/apache/commons/ognl/test/NumericConversionTest.java
index a6b38c8..04209e4 100644
--- a/src/test/java/org/apache/commons/ognl/test/NumericConversionTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/NumericConversionTest.java
@@ -39,7 +39,7 @@
     extends OgnlTestCase
 {
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         /* To Integer.class */
         { "55", Integer.class, new Integer( 55 ) }, { new Integer( 55 ), Integer.class, new Integer( 55 ) },
         { new Double( 55 ), Integer.class, new Integer( 55 ) }, { Boolean.TRUE, Integer.class, new Integer( 1 ) },
@@ -150,13 +150,13 @@
         { new BigInteger( "55" ), BigDecimal.class, new BigDecimal( "55" ) },
         { new BigDecimal( "55.1234" ), BigDecimal.class, new BigDecimal( "55.1234" ) }, };
 
-    private Object value;
+    private final Object value;
 
-    private Class<? extends Number> toClass;
+    private final Class<? extends Number> toClass;
 
-    private Object expectedValue;
+    private final Object expectedValue;
 
-    private int scale;
+    private final int scale;
 
     /*
      * =================================================================== Public static methods
diff --git a/src/test/java/org/apache/commons/ognl/test/ObjectIndexedPropertyTest.java b/src/test/java/org/apache/commons/ognl/test/ObjectIndexedPropertyTest.java
index 87e08c6..08c6e04 100644
--- a/src/test/java/org/apache/commons/ognl/test/ObjectIndexedPropertyTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/ObjectIndexedPropertyTest.java
@@ -34,11 +34,11 @@
     extends OgnlTestCase
 {
 
-    private static ObjectIndexed OBJECT_INDEXED = new ObjectIndexed();
+    private static final ObjectIndexed OBJECT_INDEXED = new ObjectIndexed();
 
-    private static Bean1 root = new Bean1();
+    private static final Bean1 ROOT = new Bean1();
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         // Arbitrary indexed properties
         { OBJECT_INDEXED, "attributes[\"bar\"]", "baz" }, // get non-indexed property through
         // attributes Map
@@ -61,7 +61,7 @@
         { OBJECT_INDEXED, "attribute[$]", OgnlException.class }, // illegal DynamicSubscript
         // access to object indexed
         // property
-        { root, "bean2.bean3.indexedValue[25]", null } };
+        { ROOT, "bean2.bean3.indexedValue[25]", null } };
 
     /*
      * =================================================================== Public static methods
diff --git a/src/test/java/org/apache/commons/ognl/test/OgnlTestCase.java b/src/test/java/org/apache/commons/ognl/test/OgnlTestCase.java
index b0a09de..39fc82d 100644
--- a/src/test/java/org/apache/commons/ognl/test/OgnlTestCase.java
+++ b/src/test/java/org/apache/commons/ognl/test/OgnlTestCase.java
@@ -35,23 +35,23 @@
 
     protected OgnlContext _context;
 
-    private String _expressionString;
+    private final String _expressionString;
 
     private SimpleNode _expression;
 
-    private Object _expectedResult;
+    private final Object _expectedResult;
 
-    private Object _root;
+    private final Object _root;
 
     protected boolean _compileExpressions = true;
 
-    private boolean hasSetValue;
+    private final boolean hasSetValue;
 
-    private Object setValue;
+    private final Object setValue;
 
-    private boolean hasExpectedAfterSetResult;
+    private final boolean hasExpectedAfterSetResult;
 
-    private Object expectedAfterSetResult;
+    private final Object expectedAfterSetResult;
 
     /*
      * =================================================================== Public static methods
diff --git a/src/test/java/org/apache/commons/ognl/test/OperatorTest.java b/src/test/java/org/apache/commons/ognl/test/OperatorTest.java
index 4bcf475..8221467 100644
--- a/src/test/java/org/apache/commons/ognl/test/OperatorTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/OperatorTest.java
@@ -30,7 +30,7 @@
 public class OperatorTest
     extends OgnlTestCase
 {
-    private static Object[][] TESTS = { { null, "\"one\" > \"two\"", Boolean.FALSE },
+    private static final Object[][] TESTS = { { null, "\"one\" > \"two\"", Boolean.FALSE },
         { null, "\"one\" >= \"two\"", Boolean.FALSE }, { null, "\"one\" < \"two\"", Boolean.TRUE },
         { null, "\"one\" <= \"two\"", Boolean.TRUE }, { null, "\"one\" == \"two\"", Boolean.FALSE },
         { null, "\"o\" > \"o\"", Boolean.FALSE }, { null, "\"o\" gt \"o\"", Boolean.FALSE },
diff --git a/src/test/java/org/apache/commons/ognl/test/Performance.java b/src/test/java/org/apache/commons/ognl/test/Performance.java
index 50fe3cf..c4914d1 100644
--- a/src/test/java/org/apache/commons/ognl/test/Performance.java
+++ b/src/test/java/org/apache/commons/ognl/test/Performance.java
@@ -40,23 +40,23 @@
 
     private static boolean TIME_MODE;
 
-    private static NumberFormat FACTOR_FORMAT = new DecimalFormat( "0.000" );
+    private static final NumberFormat FACTOR_FORMAT = new DecimalFormat( "0.000" );
 
-    private String _name;
+    private final String _name;
 
-    private OgnlContext _context = (OgnlContext) Ognl.createDefaultContext( null );
+    private final OgnlContext _context = (OgnlContext) Ognl.createDefaultContext( null );
 
-    private Bean1 _root = new Bean1();
+    private final Bean1 _root = new Bean1();
 
     private SimpleNode _expression;
 
     private SimpleNode _compiledExpression;
 
-    private Method _method;
+    private final Method _method;
 
     private int _iterations;
 
-    private String _expressionString;
+    private final String _expressionString;
 
     private boolean _isMvel = false;
 
diff --git a/src/test/java/org/apache/commons/ognl/test/PrimitiveArrayTest.java b/src/test/java/org/apache/commons/ognl/test/PrimitiveArrayTest.java
index 9ead2c8..3cffce4 100644
--- a/src/test/java/org/apache/commons/ognl/test/PrimitiveArrayTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/PrimitiveArrayTest.java
@@ -31,9 +31,9 @@
 public class PrimitiveArrayTest
     extends OgnlTestCase
 {
-    private static Root ROOT = new Root();
+    private static final Root ROOT = new Root();
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         // Primitive array creation
         { ROOT, "new boolean[5]", new boolean[5] },
         { ROOT, "new boolean[] { true, false }", new boolean[] { true, false } },
diff --git a/src/test/java/org/apache/commons/ognl/test/PrimitiveNullHandlingTest.java b/src/test/java/org/apache/commons/ognl/test/PrimitiveNullHandlingTest.java
index 65fa647..04a4338 100644
--- a/src/test/java/org/apache/commons/ognl/test/PrimitiveNullHandlingTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/PrimitiveNullHandlingTest.java
@@ -32,7 +32,7 @@
     extends OgnlTestCase
 {
 
-    private static Simple SIMPLE = new Simple();
+    private static final Simple SIMPLE = new Simple();
 
     static
     {
@@ -40,7 +40,7 @@
         SIMPLE.setIntValue( 34 );
     }
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         // Primitive null handling
         { SIMPLE, "floatValue", new Float( 10.56f ), null, new Float( 0f ) }, // set float to
         // null, should
diff --git a/src/test/java/org/apache/commons/ognl/test/PrivateAccessorTest.java b/src/test/java/org/apache/commons/ognl/test/PrivateAccessorTest.java
index 3cf00d0..8e38be2 100644
--- a/src/test/java/org/apache/commons/ognl/test/PrivateAccessorTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/PrivateAccessorTest.java
@@ -35,9 +35,9 @@
     extends OgnlTestCase
 {
 
-    private static Root ROOT = new Root();
+    private static final Root ROOT = new Root();
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         // Using private get/set methods
         { ROOT, "getPrivateAccessorIntValue()", new Integer( 67 ) },
         { ROOT, "privateAccessorIntValue", new Integer( 67 ) },
diff --git a/src/test/java/org/apache/commons/ognl/test/PrivateMemberTest.java b/src/test/java/org/apache/commons/ognl/test/PrivateMemberTest.java
index 7f14925..728c5a6 100644
--- a/src/test/java/org/apache/commons/ognl/test/PrivateMemberTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/PrivateMemberTest.java
@@ -33,7 +33,7 @@
 public class PrivateMemberTest
     extends TestCase
 {
-    private String _privateProperty = "private value";
+    private final String _privateProperty = "private value";
 
     protected OgnlContext context;
 
diff --git a/src/test/java/org/apache/commons/ognl/test/ProjectionSelectionTest.java b/src/test/java/org/apache/commons/ognl/test/ProjectionSelectionTest.java
index fada15e..ae5a8b0 100644
--- a/src/test/java/org/apache/commons/ognl/test/ProjectionSelectionTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/ProjectionSelectionTest.java
@@ -33,9 +33,9 @@
 public class ProjectionSelectionTest
     extends OgnlTestCase
 {
-    private static Root ROOT = new Root();
+    private static final Root ROOT = new Root();
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         // Projection, selection
         { ROOT, "array.{class}",
             Arrays.asList( new Class[] { Integer.class, Integer.class, Integer.class, Integer.class } ) },
diff --git a/src/test/java/org/apache/commons/ognl/test/PropertyArithmeticAndLogicalOperatorsTest.java b/src/test/java/org/apache/commons/ognl/test/PropertyArithmeticAndLogicalOperatorsTest.java
index 8c23ff6..a206dd1 100644
--- a/src/test/java/org/apache/commons/ognl/test/PropertyArithmeticAndLogicalOperatorsTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/PropertyArithmeticAndLogicalOperatorsTest.java
@@ -38,13 +38,13 @@
     extends OgnlTestCase
 {
 
-    private static Root ROOT = new Root();
+    private static final Root ROOT = new Root();
 
-    private static TestModel MODEL = new TestModel();
+    private static final TestModel MODEL = new TestModel();
 
-    private static SimpleNumeric NUMERIC = new SimpleNumeric();
+    private static final SimpleNumeric NUMERIC = new SimpleNumeric();
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         { ROOT, "objectIndex > 0", Boolean.TRUE },
         { ROOT, "false", Boolean.FALSE },
         { ROOT, "!false || true", Boolean.TRUE },
diff --git a/src/test/java/org/apache/commons/ognl/test/PropertyNotFoundTest.java b/src/test/java/org/apache/commons/ognl/test/PropertyNotFoundTest.java
index b4e342a..b6599c9 100644
--- a/src/test/java/org/apache/commons/ognl/test/PropertyNotFoundTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/PropertyNotFoundTest.java
@@ -38,7 +38,7 @@
 {
     private static final Blah BLAH = new Blah();
 
-    private static Object[][] TESTS = { { BLAH, "webwork.token.name", OgnlException.class, "W value",
+    private static final Object[][] TESTS = { { BLAH, "webwork.token.name", OgnlException.class, "W value",
         OgnlException.class }, };
 
     /*
diff --git a/src/test/java/org/apache/commons/ognl/test/PropertySetterTest.java b/src/test/java/org/apache/commons/ognl/test/PropertySetterTest.java
index 851dbf5..8e1bdc0 100644
--- a/src/test/java/org/apache/commons/ognl/test/PropertySetterTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/PropertySetterTest.java
@@ -35,9 +35,9 @@
 
     private Map<String, String> map;
 
-    private TestObject testObject = new TestObject( "propertyValue" );
+    private final TestObject testObject = new TestObject( "propertyValue" );
 
-    private String propertyKey = "property";
+    private final String propertyKey = "property";
 
     public interface TestInterface
     {
@@ -50,7 +50,7 @@
 
         private String property;
 
-        private Integer integerProperty = 1;
+        private final Integer integerProperty = 1;
 
         public TestObject( String property )
         {
diff --git a/src/test/java/org/apache/commons/ognl/test/PropertyTest.java b/src/test/java/org/apache/commons/ognl/test/PropertyTest.java
index 9f9dcf6..bc66f48 100644
--- a/src/test/java/org/apache/commons/ognl/test/PropertyTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/PropertyTest.java
@@ -44,13 +44,13 @@
 
     public static final String VALUE = "foo";
 
-    private static Root ROOT = new Root();
+    private static final Root ROOT = new Root();
 
-    private static BaseBean BEAN = new FirstBean();
+    private static final BaseBean BEAN = new FirstBean();
 
-    private static PropertyHolder PROPERTY = new PropertyHolder();
+    private static final PropertyHolder PROPERTY = new PropertyHolder();
 
-    private static Object[][] TESTS =
+    private static final Object[][] TESTS =
         {
             { ROOT, "testString != null && !false", Boolean.TRUE },
             { ROOT, "!getRenderNavigation() and !getReadonly()", Boolean.TRUE },
diff --git a/src/test/java/org/apache/commons/ognl/test/ProtectedInnerClassTest.java b/src/test/java/org/apache/commons/ognl/test/ProtectedInnerClassTest.java
index c1927c9..cf0bac6 100644
--- a/src/test/java/org/apache/commons/ognl/test/ProtectedInnerClassTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/ProtectedInnerClassTest.java
@@ -32,9 +32,9 @@
     extends OgnlTestCase
 {
 
-    private static Root ROOT = new Root();
+    private static final Root ROOT = new Root();
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         // member access of inner class (Arrays.asList() returned protected inner class)
         { ROOT, "list.size()", ROOT.getList().size() },
         { ROOT, "list[0]", ROOT.getList().get( 0 ) }
diff --git a/src/test/java/org/apache/commons/ognl/test/QuotingTest.java b/src/test/java/org/apache/commons/ognl/test/QuotingTest.java
index c603d96..53e2ae8 100644
--- a/src/test/java/org/apache/commons/ognl/test/QuotingTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/QuotingTest.java
@@ -31,7 +31,7 @@
 public class QuotingTest
     extends OgnlTestCase
 {
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         // Quoting
         { null, "`c`", new Character( 'c' ) }, { null, "'s'", new Character( 's' ) }, { null, "'string'", "string" },
         { null, "\"string\"", "string" }, { null, "'' + 'bar'", "bar" },
diff --git a/src/test/java/org/apache/commons/ognl/test/SetterTest.java b/src/test/java/org/apache/commons/ognl/test/SetterTest.java
index 56581c9..2eb5caf 100644
--- a/src/test/java/org/apache/commons/ognl/test/SetterTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/SetterTest.java
@@ -32,7 +32,7 @@
 public class SetterTest
     extends OgnlTestCase
 {
-    private static Root ROOT = new Root();
+    private static final Root ROOT = new Root();
 
     static Set<String> _list = new HashSet<String>();
     static
@@ -40,7 +40,7 @@
         _list.add( "Test1" );
     }
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         // Setting values
         { ROOT.getMap(), "newValue", null, new Integer( 101 ) },
         { ROOT, "settableList[0]", "foo", "quux" }, // absolute indexes
diff --git a/src/test/java/org/apache/commons/ognl/test/SetterWithConversionTest.java b/src/test/java/org/apache/commons/ognl/test/SetterWithConversionTest.java
index 0a5f738..1191af1 100644
--- a/src/test/java/org/apache/commons/ognl/test/SetterWithConversionTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/SetterWithConversionTest.java
@@ -31,9 +31,9 @@
 public class SetterWithConversionTest
     extends OgnlTestCase
 {
-    private static Root ROOT = new Root();
+    private static final Root ROOT = new Root();
 
-    private static Object[][] TESTS = {
+    private static final Object[][] TESTS = {
         // Property set with conversion
         { ROOT, "intValue", new Integer( 0 ), new Double( 6.5 ), new Integer( 6 ) },
         { ROOT, "intValue", new Integer( 6 ), new Double( 1025.87645 ), new Integer( 1025 ) },
diff --git a/src/test/java/org/apache/commons/ognl/test/ShortCircuitingExpressionTest.java b/src/test/java/org/apache/commons/ognl/test/ShortCircuitingExpressionTest.java
index 7f47b70..80d5e13 100644
--- a/src/test/java/org/apache/commons/ognl/test/ShortCircuitingExpressionTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/ShortCircuitingExpressionTest.java
@@ -32,7 +32,7 @@
 public class ShortCircuitingExpressionTest
     extends OgnlTestCase
 {
-    private static Object[][] TESTS = { { "#root ? someProperty : 99", new Integer( 99 ) },
+    private static final Object[][] TESTS = { { "#root ? someProperty : 99", new Integer( 99 ) },
         { "#root ? 99 : someProperty", OgnlException.class },
         { "(#x=99)? #x.someProperty : #x", NoSuchPropertyException.class },
         { "#xyzzy.doubleValue()", NullPointerException.class }, { "#xyzzy && #xyzzy.doubleValue()", null },
diff --git a/src/test/java/org/apache/commons/ognl/test/SimpleNavigationChainTreeTest.java b/src/test/java/org/apache/commons/ognl/test/SimpleNavigationChainTreeTest.java
index 42ec728..23b0d93 100644
--- a/src/test/java/org/apache/commons/ognl/test/SimpleNavigationChainTreeTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/SimpleNavigationChainTreeTest.java
@@ -35,7 +35,7 @@
     extends OgnlTestCase
 {
 
-    private static Object[][] TESTS = { { "name", Boolean.TRUE }, { "name[i]", Boolean.FALSE },
+    private static final Object[][] TESTS = { { "name", Boolean.TRUE }, { "name[i]", Boolean.FALSE },
         { "name + foo", Boolean.FALSE }, { "name.foo", Boolean.TRUE } };
 
     /*
diff --git a/src/test/java/org/apache/commons/ognl/test/SimplePropertyTreeTest.java b/src/test/java/org/apache/commons/ognl/test/SimplePropertyTreeTest.java
index c6c5ef0..debe179 100644
--- a/src/test/java/org/apache/commons/ognl/test/SimplePropertyTreeTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/SimplePropertyTreeTest.java
@@ -34,7 +34,7 @@
 public class SimplePropertyTreeTest
     extends OgnlTestCase
 {
-    private static Object[][] TESTS = { { "name", Boolean.TRUE }, { "foo", Boolean.TRUE },
+    private static final Object[][] TESTS = { { "name", Boolean.TRUE }, { "foo", Boolean.TRUE },
         { "name[i]", Boolean.FALSE }, { "name + foo", Boolean.FALSE }, { "name.foo", Boolean.FALSE },
         { "name.foo.bar", Boolean.FALSE }, { "name.{? foo }", Boolean.FALSE }, { "name.( foo )", Boolean.FALSE } };
 
diff --git a/src/test/java/org/apache/commons/ognl/test/StaticsAndConstructorsTest.java b/src/test/java/org/apache/commons/ognl/test/StaticsAndConstructorsTest.java
index 69e7bff..2605402 100644
--- a/src/test/java/org/apache/commons/ognl/test/StaticsAndConstructorsTest.java
+++ b/src/test/java/org/apache/commons/ognl/test/StaticsAndConstructorsTest.java
@@ -33,9 +33,9 @@
 public class StaticsAndConstructorsTest
     extends OgnlTestCase
 {
-    private static Root ROOT = new Root();
+    private static final Root ROOT = new Root();
 
-    private static Object[][] TESTS =
+    private static final Object[][] TESTS =
         {
             { "@java.lang.Class@forName(\"java.lang.Object\")", Object.class },
             { "@java.lang.Integer@MAX_VALUE", Integer.MAX_VALUE },
diff --git a/src/test/java/org/apache/commons/ognl/test/objects/BaseObjectIndexed.java b/src/test/java/org/apache/commons/ognl/test/objects/BaseObjectIndexed.java
index 91e9fb8..4d866fb 100644
--- a/src/test/java/org/apache/commons/ognl/test/objects/BaseObjectIndexed.java
+++ b/src/test/java/org/apache/commons/ognl/test/objects/BaseObjectIndexed.java
@@ -24,7 +24,7 @@
 public class BaseObjectIndexed
     extends Object
 {
-    private Map attributes = new HashMap();
+    private final Map attributes = new HashMap();
 
     public BaseObjectIndexed()
     {
diff --git a/src/test/java/org/apache/commons/ognl/test/objects/Bean1.java b/src/test/java/org/apache/commons/ognl/test/objects/Bean1.java
index 3a6d3b9..4553cb3 100644
--- a/src/test/java/org/apache/commons/ognl/test/objects/Bean1.java
+++ b/src/test/java/org/apache/commons/ognl/test/objects/Bean1.java
@@ -21,7 +21,7 @@
 
 public class Bean1
 {
-    private Bean2 bean2 = new Bean2();
+    private final Bean2 bean2 = new Bean2();
 
     public Bean2 getBean2()
     {
diff --git a/src/test/java/org/apache/commons/ognl/test/objects/Bean2.java b/src/test/java/org/apache/commons/ognl/test/objects/Bean2.java
index bb67bda..ac5739b 100644
--- a/src/test/java/org/apache/commons/ognl/test/objects/Bean2.java
+++ b/src/test/java/org/apache/commons/ognl/test/objects/Bean2.java
@@ -21,7 +21,7 @@
 
 public class Bean2
 {
-    private Bean3 bean3 = new Bean3();
+    private final Bean3 bean3 = new Bean3();
 
     private boolean _pageBreakAfter = false;
 
diff --git a/src/test/java/org/apache/commons/ognl/test/objects/Bean3.java b/src/test/java/org/apache/commons/ognl/test/objects/Bean3.java
index 5dca74a..46073f2 100644
--- a/src/test/java/org/apache/commons/ognl/test/objects/Bean3.java
+++ b/src/test/java/org/apache/commons/ognl/test/objects/Bean3.java
@@ -26,7 +26,7 @@
 {
     private int value = 100;
 
-    private Map<String, String> map;
+    private final Map<String, String> map;
     {
         map = new HashMap<String, String>();
         map.put( "foo", "bar" );
diff --git a/src/test/java/org/apache/commons/ognl/test/objects/BeanProviderImpl.java b/src/test/java/org/apache/commons/ognl/test/objects/BeanProviderImpl.java
index 75cf07e..2c5f9ac 100644
--- a/src/test/java/org/apache/commons/ognl/test/objects/BeanProviderImpl.java
+++ b/src/test/java/org/apache/commons/ognl/test/objects/BeanProviderImpl.java
@@ -32,7 +32,7 @@
 public class BeanProviderImpl
     implements Serializable, BeanProvider
 {
-    private Map _map = new HashMap();
+    private final Map _map = new HashMap();
 
     public BeanProviderImpl()
     {
diff --git a/src/test/java/org/apache/commons/ognl/test/objects/Entry.java b/src/test/java/org/apache/commons/ognl/test/objects/Entry.java
index ea09221..608d23a 100644
--- a/src/test/java/org/apache/commons/ognl/test/objects/Entry.java
+++ b/src/test/java/org/apache/commons/ognl/test/objects/Entry.java
@@ -25,7 +25,7 @@
 public class Entry
 {
 
-    private int _size = 1;
+    private final int _size = 1;
 
     public int size()
     {
diff --git a/src/test/java/org/apache/commons/ognl/test/objects/Indexed.java b/src/test/java/org/apache/commons/ognl/test/objects/Indexed.java
index 70b1fa2..e6bfb59 100644
--- a/src/test/java/org/apache/commons/ognl/test/objects/Indexed.java
+++ b/src/test/java/org/apache/commons/ognl/test/objects/Indexed.java
@@ -26,11 +26,11 @@
 {
     private String[] _values = new String[] { "foo", "bar", "baz" };
 
-    private List _list = new ArrayList();
+    private final List _list = new ArrayList();
 
-    private ListSource _source = new ListSourceImpl();
+    private final ListSource _source = new ListSourceImpl();
 
-    private Map _props = new HashMap();
+    private final Map _props = new HashMap();
 
     public Indexed()
     {
diff --git a/src/test/java/org/apache/commons/ognl/test/objects/MenuItem.java b/src/test/java/org/apache/commons/ognl/test/objects/MenuItem.java
index 84ba146..cd38693 100644
--- a/src/test/java/org/apache/commons/ognl/test/objects/MenuItem.java
+++ b/src/test/java/org/apache/commons/ognl/test/objects/MenuItem.java
@@ -28,9 +28,9 @@
 public class MenuItem
 {
 
-    private String page;
+    private final String page;
 
-    private String label;
+    private final String label;
 
     private List<MenuItem> children = new ArrayList<MenuItem>();
 
diff --git a/src/test/java/org/apache/commons/ognl/test/objects/MyMapImpl.java b/src/test/java/org/apache/commons/ognl/test/objects/MyMapImpl.java
index 0bdc70b..0965c10 100644
--- a/src/test/java/org/apache/commons/ognl/test/objects/MyMapImpl.java
+++ b/src/test/java/org/apache/commons/ognl/test/objects/MyMapImpl.java
@@ -29,7 +29,7 @@
     extends Object
     implements MyMap
 {
-    private Map map = new HashMap();
+    private final Map map = new HashMap();
 
     public void clear()
     {
diff --git a/src/test/java/org/apache/commons/ognl/test/objects/Root.java b/src/test/java/org/apache/commons/ognl/test/objects/Root.java
index 1003081..ef930f1 100644
--- a/src/test/java/org/apache/commons/ognl/test/objects/Root.java
+++ b/src/test/java/org/apache/commons/ognl/test/objects/Root.java
@@ -37,21 +37,21 @@
 
     private int[] array = { 1, 2, 3, 4 };
 
-    private Map map = new HashMap( 23 );
+    private final Map map = new HashMap( 23 );
 
-    private MyMap myMap = new MyMapImpl();
+    private final MyMap myMap = new MyMapImpl();
 
-    private List list = Arrays.asList( new Object[] { null, this, array } );
+    private final List list = Arrays.asList( new Object[] { null, this, array } );
 
-    private List settableList = new ArrayList( Arrays.asList( new Object[] { "foo", "bar", "baz" } ) );
+    private final List settableList = new ArrayList( Arrays.asList( new Object[] { "foo", "bar", "baz" } ) );
 
-    private int index = 1;
+    private final int index = 1;
 
     private int intValue = 0;
 
     private String stringValue;
 
-    private int yetAnotherIntValue = 46;
+    private final int yetAnotherIntValue = 46;
 
     private boolean privateAccessorBooleanValue = true;
 
@@ -71,31 +71,31 @@
 
     private Locale _selected = Locale.getDefault();
 
-    private List<List<Boolean>> _booleanValues = new ArrayList<List<Boolean>>();
+    private final List<List<Boolean>> _booleanValues = new ArrayList<List<Boolean>>();
 
-    private boolean[] _booleanArray = { true, false, true, true };
+    private final boolean[] _booleanArray = { true, false, true, true };
 
     private List _list;
 
-    private int verbosity = 87;
+    private final int verbosity = 87;
 
-    private BeanProvider _beanProvider = new BeanProviderImpl();
+    private final BeanProvider _beanProvider = new BeanProviderImpl();
 
     private boolean _render;
 
     private Boolean _readOnly = Boolean.FALSE;
 
-    private Integer _objIndex = new Integer( 1 );
+    private final Integer _objIndex = new Integer( 1 );
 
-    private Object _genericObjIndex = new Integer( 2 );
+    private final Object _genericObjIndex = new Integer( 2 );
 
-    private Date _date = new Date();
+    private final Date _date = new Date();
 
     private boolean _openWindow = false;
 
-    private ITreeContentProvider _contentProvider = new TreeContentProvider();
+    private final ITreeContentProvider _contentProvider = new TreeContentProvider();
 
-    private Indexed _indexed = new Indexed();
+    private final Indexed _indexed = new Indexed();
 
     private SearchTab _tab = new SearchTab();
 
diff --git a/src/test/java/org/apache/commons/ognl/test/objects/Simple.java b/src/test/java/org/apache/commons/ognl/test/objects/Simple.java
index b75b5c0..36e5775 100644
--- a/src/test/java/org/apache/commons/ognl/test/objects/Simple.java
+++ b/src/test/java/org/apache/commons/ognl/test/objects/Simple.java
@@ -41,7 +41,7 @@
 
     private BigDecimal bigDecValue = new BigDecimal( 0.0 );
 
-    private Root root = new Root();
+    private final Root root = new Root();
 
     private Bean3 _bean;
 
diff --git a/src/test/java/org/apache/commons/ognl/test/objects/SimpleEnum.java b/src/test/java/org/apache/commons/ognl/test/objects/SimpleEnum.java
index 9c99d50..250dc46 100644
--- a/src/test/java/org/apache/commons/ognl/test/objects/SimpleEnum.java
+++ b/src/test/java/org/apache/commons/ognl/test/objects/SimpleEnum.java
@@ -27,7 +27,7 @@
 
     ONE( 1 );
 
-    private int _value;
+    private final int _value;
 
     private SimpleEnum( int value )
     {
diff --git a/src/test/java/org/apache/commons/ognl/test/util/ContextClassLoader.java b/src/test/java/org/apache/commons/ognl/test/util/ContextClassLoader.java
index b8cefc4..d50735c 100644
--- a/src/test/java/org/apache/commons/ognl/test/util/ContextClassLoader.java
+++ b/src/test/java/org/apache/commons/ognl/test/util/ContextClassLoader.java
@@ -24,7 +24,7 @@
 public class ContextClassLoader
     extends ClassLoader
 {
-    private OgnlContext context;
+    private final OgnlContext context;
 
     /*
      * =================================================================== Constructors
diff --git a/src/test/java/org/apache/commons/ognl/test/util/NameFactory.java b/src/test/java/org/apache/commons/ognl/test/util/NameFactory.java
index 5f61b73..7ce7e8f 100644
--- a/src/test/java/org/apache/commons/ognl/test/util/NameFactory.java
+++ b/src/test/java/org/apache/commons/ognl/test/util/NameFactory.java
@@ -22,11 +22,11 @@
 public class NameFactory
     extends Object
 {
-    private String classBaseName;
+    private final String classBaseName;
 
     private int classNameCounter = 0;
 
-    private String variableBaseName;
+    private final String variableBaseName;
 
     private int variableNameCounter = 0;