Java ClassLoader findLibrary()方法与示例

ClassLoader类findLibrary()方法

  • findLibrary()方法在java.lang包中可用。

  • findLibrary()方法用于查找给定本机库的绝对路径名。

  • findLibrary()方法是一个非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。

  • 返回给定库的绝对路径时,findLibrary()方法不会引发异常。

语法:

    protected String findLibrary(String lib_name);

参数:

  • 字符串lib_name –代表库的名称。

返回值:

该方法的返回类型为String,它返回给定库的绝对路径。

注意:当JVM在作为系统属性“ java.library.path”给出的路径中找到库时,它将返回null。

示例

//Java程序演示示例 
//ClassLoader的String findLibrary(String lib_name)方法的说明 

class FindLibrary extends ClassLoader {
    //覆盖findLibrary()ClassLoader-
    protected String findLibrary(String lib_name) {
        if (lib_name.equals("java.lang")) {}
        return lib_name;
    }
}

public class Main {
    public static void main(String[] args) throws Exception {
        //创建一个FindLibrary的实例
        FindLibrary fl = new FindLibrary();

        //我们正在找到库java.lang,它返回
        //它已经存在于Java中
        String library = fl.findLibrary("java.lang");
        System.out.println("Library Found: " + library);
    }
}

输出结果

Library Found: java.lang