diff --git a/tools/droiddoc/src/FieldInfo.java b/tools/droiddoc/src/FieldInfo.java
index 1c975e4..d9371e8 100644
--- a/tools/droiddoc/src/FieldInfo.java
+++ b/tools/droiddoc/src/FieldInfo.java
@@ -26,7 +26,7 @@
             return a.name().compareTo(b.name());
         }
     };
-    
+
     public FieldInfo(String name, ClassInfo containingClass, ClassInfo realContainingClass,
                         boolean isPublic, boolean isProtected,
                         boolean isPackagePrivate, boolean isPrivate,
@@ -92,7 +92,7 @@
     {
         return constantLiteralValue(mConstantValue);
     }
-    
+
     public boolean isDeprecated() {
         boolean deprecated = false;
         if (!mDeprecatedKnown) {
@@ -124,7 +124,7 @@
             if (val instanceof Boolean
                     || val instanceof Byte
                     || val instanceof Short
-                    || val instanceof Integer) 
+                    || val instanceof Integer)
             {
                 str = val.toString();
             }
@@ -291,6 +291,7 @@
         }
     }
 
+    @Override
     public boolean isExecutable()
     {
         return false;
