< prev index next >
src/java.base/share/classes/java/lang/ClassLoader.java
Print this page
rev 58565 : 8238358: Implementation of JEP 371: Hidden Classes
Reviewed-by: duke
Contributed-by: mandy.chung@oracle.com, lois.foltan@oracle.com, david.holmes@oracle.com, harold.seigel@oracle.com, serguei.spitsyn@oracle.com, alex.buckley@oracle.com, jamsheed.c.m@oracle.com
*** 1114,1123 ****
--- 1114,1146 ----
static native Class<?> defineClass2(ClassLoader loader, String name, java.nio.ByteBuffer b,
int off, int len, ProtectionDomain pd,
String source);
+ /**
+ * Defines a class of the given flags via Lookup.defineClass.
+ *
+ * @param loader the defining loader
+ * @param lookup nest host of the Class to be defined
+ * @param name the binary name or {@code null} if not findable
+ * @param b class bytes
+ * @param off the start offset in {@code b} of the class bytes
+ * @param len the length of the class bytes
+ * @param pd protection domain
+ * @param initialize initialize the class
+ * @param flags flags
+ * @param classData class data
+ */
+ static native Class<?> defineClass0(ClassLoader loader,
+ Class<?> lookup,
+ String name,
+ byte[] b, int off, int len,
+ ProtectionDomain pd,
+ boolean initialize,
+ int flags,
+ Object classData);
+
// true if the name is null or has the potential to be a valid binary name
private boolean checkName(String name) {
if ((name == null) || (name.isEmpty()))
return true;
if ((name.indexOf('/') != -1) || (name.charAt(0) == '['))
< prev index next >