Class ClassPath.ClassInfo

    • Method Detail

      • getPackageName

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