java.lang.Objectjava.lang.ClassLoader
java.security.SecureClassLoader
public class SecureClassLoader
This class extends ClassLoader with additional support for defining classes with an associated code source and permissions which are retrieved by the system policy by default.
| Constructor Summary | |
|---|---|
protected |
SecureClassLoader()
Creates a new SecureClassLoader using the default parent class loader for delegation. |
protected |
SecureClassLoader(ClassLoader parent)
Creates a new SecureClassLoader using the specified parent class loader for delegation. |
| Method Summary | |
|---|---|
protected Class<?> |
defineClass(String name,
byte[] b,
int off,
int len,
CodeSource cs)
Converts an array of bytes into an instance of class Class, with an optional CodeSource. |
protected Class<?> |
defineClass(String name,
ByteBuffer b,
CodeSource cs)
Converts a ByteBuffer
into an instance of class Class, with an optional CodeSource. |
protected PermissionCollection |
getPermissions(CodeSource codesource)
Returns the permissions for the given CodeSource object. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
protected SecureClassLoader(ClassLoader parent)
If there is a security manager, this method first
calls the security manager's checkCreateClassLoader
method to ensure creation of a class loader is allowed.
parent - the parent ClassLoader
SecurityException - if a security manager exists and its
checkCreateClassLoader method doesn't allow
creation of a class loader.SecurityManager.checkCreateClassLoader()protected SecureClassLoader()
If there is a security manager, this method first
calls the security manager's checkCreateClassLoader
method to ensure creation of a class loader is allowed.
SecurityException - if a security manager exists and its
checkCreateClassLoader method doesn't allow
creation of a class loader.SecurityManager.checkCreateClassLoader()| Method Detail |
|---|
protected final Class<?> defineClass(String name, byte[] b, int off, int len, CodeSource cs)
If a non-null CodeSource is supplied a ProtectionDomain is constructed and associated with the class being defined.
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 in
positions off through off+len-1
should have the format of a valid class file as defined
by the
Java
Virtual Machine Specification.off - the start offset in b of the class datalen - the length of the class datacs - the associated CodeSource, or null if none
Class object created from the data,
and optional CodeSource.
ClassFormatError - if the data did not contain a valid class
IndexOutOfBoundsException - if either off or
len is negative, or if
off+len is greater than b.length.
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.".protected final Class<?> defineClass(String name, ByteBuffer b, CodeSource cs)
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.
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.cs - the associated CodeSource, or null if none
Class object created from the data,
and optional CodeSource.
ClassFormatError - if the data did not contain a valid class
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.".protected PermissionCollection getPermissions(CodeSource codesource)
This method is invoked by the defineClass method which takes a CodeSource as an argument when it is constructing the ProtectionDomain for the class being defined.
codesource - the codesource.
Ces informations proviennent du site de http://java.sun.com
Le contenu de cette page provient du site de Sun, et est généré depuis un cache sur l'infobrol après certains traitements automatisés. La présentation peut donc différer du document original, mais le contenu aussi. Vous pouvez utiliser ce bouton pour afficher la page originale du site de Sun :
Maintenir les pages en cache sur différents sites peut offrir plus de disponibilité.
Chaque page est indexée dans la base de donnée, ce qui permet de retrouver facilement les informations, au moyen des sommaires, du moteur de recherche interne, etc.
Des facilités sont mises en place pour que les membres de l'infobrol puissent effectuer des traductions en français des différents documents. Ceci devrait permettre aux débutants en programmation Java de consulter les API en français s'ils maîtrisent moins bien la langue de Shakespeare. Dans le cas où une traduction a été soumise, elle est disponible au moyen d'un lien en bas de page. Si la traduction a été validée, la page s'affiche par défaut en français, et un lien en bas de page permet d'atteindre la version en anglais.
Le code sur l'infobrol est automatiquement coloré selon la syntaxe, et les différents mots clés sont transformés en liens pour accéder rapidement aux informations.
Vous avez la possibilité de partager vos expériences en proposant vos propres extraits de code en utilisant le bouton "ajouter un commentaire" en bas de page. Si vous visitez simplement l'infobrol, vous avez déjà accès à cette fonction, mais si vous étes membre du brol, vous pouvez en plus utiliser des boutons supplémentaires de mise en forme, dont la coloration automatique de vos extraits de codes.
Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher les interactions avec les réseaux sociaux sur ces pages.
6 mots clés dont 0 définis manuellement (plus d'information...).
Avertissement
Cette page ne possède pas encore de mots clés manuels, ceci est donc un exemple automatique (les niveaux de pertinence sont fictifs, mais les liens sont valables). Pour tester le nuage avec une page qui contient des mots définis manuellement, vous pouvez cliquer ici.Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher le nuage de mots clés.
Recherche (afficher)
Utilisateur (masquer)
Navigation (masquer)
Apparence (afficher)
Stats (afficher)
Citation (masquer)