diff --git a/scripts/java/org/octave/ClassHelper.java b/scripts/java/org/octave/ClassHelper.java
--- a/scripts/java/org/octave/ClassHelper.java
+++ b/scripts/java/org/octave/ClassHelper.java
@@ -35,17 +35,17 @@ public class ClassHelper
               new OctClassLoader (l));
   }
 
 
   /**
    * Add the given path to the classpath.
    * @param name String - path to addd to the classpath
    * @return boolean - true if the given path exists and was added to the classpath.
-   * @throws Exception
+   * @throws Exception if an error occurs
    */
   public static boolean addClassPath (String name)
     throws Exception
   {
     boolean found = false;
     java.io.File f = new java.io.File (name);
     if (f.exists ())
       {
@@ -56,17 +56,17 @@ public class ClassHelper
   }
 
 
   // new -MH-
   /**
    *
    * @param name String - path to remove from classpath.
    * @return boolean - true if the given path existed in the classpath before it was removed.
-   * @throws Exception
+   * @throws Exception if an error occurs
    */
   public static boolean removeClassPath (String name)
     throws Exception
   {
     boolean found = false;
     java.io.File f = new java.io.File (name);
     java.net.URL urlToRemove = f.toURI ().toURL ();
     // save urls in current class path
@@ -93,17 +93,17 @@ public class ClassHelper
       }
 
     return (found);
   }
 
 
   public static String getClassPath ()
   {
-    StringBuffer buf = new StringBuffer ();
+    StringBuilder buf = new StringBuilder();
     String pathSep = System.getProperty ("path.separator");
     java.net.URL[] urls = loader.getURLs ();
 
     for (int i = 0; i < urls.length; i++)
       {
         try
           {
             java.io.File f = new java.io.File (urls[i].toURI ());
@@ -137,17 +137,17 @@ public class ClassHelper
     return (getMethods (obj.getClass ()));
   }
 
 
   // new -MH-
   // return list of methods for given class
   public static String getMethods (Class klass)
   {
-    StringBuffer sb = new StringBuffer ();
+    StringBuilder sb = new StringBuilder();
 
     Method theMethod[] = klass.getMethods ();
     for (int i = 0; i < theMethod.length; i++)
       {
         if (i > 0)
           {
             sb.append (";");
           }
@@ -185,17 +185,17 @@ public class ClassHelper
     return (sb.toString ());
   }
 
 
   // new -MH-
   // return list of fields for given class
   public static String getFields (Class klass)
   {
-    StringBuffer sb = new StringBuffer ();
+    StringBuilder sb = new StringBuilder();
 
     Field theField[] = klass.getFields ();
     for (int i = 0; i < theField.length; i++)
       {
         if (i > 0)
           {
             sb.append (";");
           }
@@ -219,17 +219,17 @@ public class ClassHelper
   // return list of fields for given class instance
   public static String getFields (Object obj)
     throws ClassNotFoundException
   {
     return (getFields (obj.getClass ()));
   }
 
 
-  public static Method findMethod (Class cls, String name, Class[] argTypes)
+  public static Method findMethod (Class<?> cls, String name, Class<?>[] argTypes)
   {
     try
       {
         return cls.getMethod (name, argTypes);
       }
     catch (Exception e)
       {
         Method[] mList = cls.getMethods ();
@@ -244,17 +244,17 @@ public class ClassHelper
                 return m;
               }
           }
         return null;
       }
   }
 
 
-  public static Constructor findConstructor (Class cls, Class[] argTypes)
+  public static Constructor findConstructor (Class<?> cls, Class<?>[] argTypes)
   {
     try
       {
         return cls.getConstructor (argTypes);
       }
     catch (Exception e)
       {
         Constructor[] cList = cls.getConstructors ();
@@ -280,35 +280,35 @@ public class ClassHelper
   {
     try
       {
         return m.invoke (target, args);
       }
     catch (IllegalAccessException ex)
       {
         String mName = m.getName ();
-        Class[] pTypes = m.getParameterTypes ();
-        Class currClass = target.getClass ();
+        Class<?>[] pTypes = m.getParameterTypes ();
+        Class<?> currClass = target.getClass ();
 
         while (currClass != null)
           {
             try
               {
                 Method meth = currClass.getMethod (mName, pTypes);
                 if (!meth.equals (m))
                   {
                     return meth.invoke (target, args);
                   }
               }
             catch (NoSuchMethodException ex2)
               {}
             catch (IllegalAccessException ex2)
               {}
 
-            Class[] ifaceList = currClass.getInterfaces ();
+            Class<?>[] ifaceList = currClass.getInterfaces ();
             for (int i = 0; i < ifaceList.length; i++)
               {
                 try
                   {
                     Method meth = ifaceList[i].getMethod (mName, pTypes);
                     return meth.invoke (target, args);
                   }
                 catch (NoSuchMethodException ex2)
@@ -487,17 +487,17 @@ public class ClassHelper
           {
             return false;
           }
       }
     return true;
   }
 
 
-  private static boolean isCallableFrom (Class expCls, Class argCls)
+  private static boolean isCallableFrom (Class<?> expCls, Class<?> argCls)
   {
     //System.out.println("isCallableFrom: "+expCls.getCanonicalName() + " <=? " + argCls.getCanonicalName());
     if (argCls == null)
       {
         return!expCls.isPrimitive ();
       }
     else if (expCls.isAssignableFrom (argCls))
       {
@@ -593,17 +593,17 @@ public class ClassHelper
     for (int i = 0; i < args.length; i++)
       {
         args[i] = castArgument (args[i], argTypes[i], expTypes[i]);
       }
     return args;
   }
 
 
-  private static Object castArgument (Object obj, Class type, Class expType)
+  private static Object castArgument (Object obj, Class<?> type, Class<?> expType)
   {
     // System.out.println("expType:"+expType.getCanonicalName() + " <= type:" + type.getCanonicalName());
     if (type == null || expType.isAssignableFrom (type))
       {
         return obj;
       }
     else if (isNumberClass (expType))
       {
diff --git a/scripts/java/org/octave/Octave.java b/scripts/java/org/octave/Octave.java
--- a/scripts/java/org/octave/Octave.java
+++ b/scripts/java/org/octave/Octave.java
@@ -23,18 +23,18 @@ along with Octave; see the file COPYING.
 package org.octave;
 
 import java.util.*;
 
 public class Octave
 {
   private static Object notifyObject = null;
   private static Object[] args = null;
-  private static LinkedList invokeList = new LinkedList ();
-  private static LinkedList waitList = new LinkedList ();
+  private static LinkedList<Object> invokeList = new LinkedList<Object> ();
+  private static LinkedList<Object> waitList = new LinkedList<Object> ();
 
   public native static boolean call (String name, Object[] argin, Object[] argout);
   public native static void doInvoke (int ID, Object[] args);
   public native static void doEvalString (String cmd);
   public native static boolean needThreadedInvokation ();
 
   public static void checkPendingAction ()
   {
