Class ClassPath.ClassInfo

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String getName()
      Returns the fully qualified name of the class.
      java.lang.String getPackageName()
      Returns the package name of the class, without attempting to load the class.
      java.lang.String getSimpleName()
      Returns the simple name of the underlying class as given in the source code.
      boolean isTopLevel()
      Returns true if the class name "looks to be" top level (not nested), that is, it includes no '$' in the name.
      java.lang.Class<?> load()
      Loads (but doesn't link or initialize) the class.
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • Method Detail

      • getPackageName

        public java.lang.String getPackageName()
        Returns the package name of the class, without attempting to load the class.

        Behaves similarly to class.getPackage().getName() but does not require the class (or package) to be loaded.

        But note that this method may behave differently for a class in the default package: For such classes, this method always returns an empty string. But under some version of Java, class.getPackage().getName() produces a NullPointerException because class.getPackage() returns null.

      • getSimpleName

        public java.lang.String getSimpleName()
        Returns the simple name of the underlying class as given in the source code.

        Behaves similarly to Class.getSimpleName() but does not require the class to be loaded.

        But note that this class uses heuristics to identify the simple name. See a related discussion in issue 3349.

      • getName

        public java.lang.String getName()
        Returns the fully qualified name of the class.

        Behaves identically to Class.getName() but does not require the class to be loaded.

      • isTopLevel

        public boolean isTopLevel()
        Returns true if the class name "looks to be" top level (not nested), that is, it includes no '$' in the name. This method may return false for a top-level class that's intentionally named with the '$' character. If this is a concern, you could use load() and then check on the loaded Class object instead.
        Since:
        30.1
      • load

        public java.lang.Class<?> load()
        Loads (but doesn't link or initialize) the class.
        Throws:
        java.lang.LinkageError - when there were errors in loading classes that this class depends on. For example, NoClassDefFoundError.