diff --git a/docs/java.html b/docs/java.html index 2757bef7..28124981 100644 --- a/docs/java.html +++ b/docs/java.html @@ -42,7 +42,7 @@

该备忘单是针对 Java 初学者的速成课程,有助于复习 Java 语言的基本语法。

入门

Hello.java

public class Hello {
@@ -964,6 +964,23 @@
   System.out.println("always printed");
 }
 
+

反射

+
/**
+* 利用反射动态加载依赖库
+* java9及以上版本可用
+* @param jar jar文件
+*/
+Method method = URLClassLoader.class.getDeclaredMethod("addURL", URL.class);
+method.setAccessible(true);
+MethodHandle addURL = lookup.unreflect(method);
+URL url = jar.toURI().toURL();
+URLClassLoader urlClassLoader = new URLClassLoader(new URL[] {url});
+addURL.invoke(urlClassLoader, url);
+//java8
+Method method = URLClassLoader.class.getDeclaredMethod("addURL", URL.class);
+method.setAccessible(true);
+method.invoke(classLoader, url);
+

util工具类

  • ArrayDeque 提供 resizable-array 并实现 Deque 接