SecurityException - if an attempt is made to add this class
to a package that contains classes that were signed by
a different set of certificates than this class, or if
the class name begins with "java.".

defineClass

Converts a ByteBuffer
into an instance of class Class, with an optional CodeSource.
Before the class can be used it must be resolved.

If a non-null CodeSource is supplied a ProtectionDomain is
constructed and associated with the class being defined.

Parameters:

name - the expected name of the class, or null
if not known, using '.' and not '/' as the separator
and without a trailing ".class" suffix.

b - the bytes that make up the class data. The bytes from positions
b.position() through b.position() + b.limit() -1
should have the format of a valid class file as defined by
The Java™ Virtual Machine Specification.

SecurityException - if an attempt is made to add this class
to a package that contains classes that were signed by
a different set of certificates than this class, or if
the class name begins with "java.".