ClassLoader类definePackage()方法
- definePackage() 方法可在
java.lang
包。 - definePackage() 方法允许类加载器为其类定义包,并且类加载器中定义的包名称必须是唯一的。
- definePackage() 方法是一个非静态方法,它只能通过类对象访问,如果我们尝试使用类名访问方法,那么我们将得到一个错误。
- definePackage() 方法可能会在定义包时抛出异常。
IllegalArgumentException:当一个包已经存在于这个类加载器或其任何一个祖先的现有包中时,可能会抛出此异常。
用法:
protected Package definePackage( String pack_name , String s_title, String s_version, String s_vendor, String i_title, String i_vendor, String i_version, URL seal_status);
参数:
String pack_name
- 表示包的名称。String s_title
- 表示标题规范。String s_version
- 代表版本规范。String s_vendor
- 代表供应商规范。String i_title
- 代表标题实现。String i_version
- 代表版本实现。String i_vendor
- 代表供应商实现。URL seal_status
- 表示密封状态(即当 URL 不为空时密封)。
返回值:
这个方法的返回类型是Package
,它返回一个新创建的包。
例:
// Java program to demonstrate the example
// of Package definePackage () method of ClassLoader
public class DefinePackageOfClassLoader extends ClassLoader {
public static void main(String[] args) throws ClassNotFoundException {
// Load a class
Class cl = Class.forName("java.lang.String");
// It returns the package of String class
Package pack = cl.getPackage();
// java.lang already exists in Java Library
if (pack != null)
System.out.println(pack.toString() + " already exists!!!!");
else
System.out.println("Ready to create a package by using definePackage()");
}
}
class DefinePackage extends ClassLoader {
// If package not exists then we can create a
// package by using definePackage() method
Package new_package = definePackage("includehelp.java", "Includehelp", "2.0.3", "Microsoft", null, null, null, null);
}
输出
package java.lang already exists!!!!
相关用法
- Java ClassLoader getSystemResourceAsStream()用法及代码示例
- Java ClassLoader findLibrary()用法及代码示例
- Java ClassLoader findSystemClass()用法及代码示例
- Java ClassLoader getPackage()用法及代码示例
- Java ClassLoader getSystemResources()用法及代码示例
- Java ClassLoader getPackages()用法及代码示例
- Java ClassLoader clearAssertionStatus()用法及代码示例
- Java ClassLoader setPackageAssertionStatus()用法及代码示例
- Java ClassLoader getResources()用法及代码示例
- Java ClassLoader findLoadedClass()用法及代码示例
- Java ClassLoader setDefaultAssertionStatus()用法及代码示例
- Java ClassLoader getSystemClassLoader()用法及代码示例
- Java ClassLoader getSystemResource()用法及代码示例
- Java ClassLoader findClass()用法及代码示例
- Java ClassLoader findResource()用法及代码示例
- Java ClassLoader getResource()用法及代码示例
- Java ClassLoader setClassAssertionStatus()用法及代码示例
- Java ClassLoader getResourceAsStream()用法及代码示例
- Java ClassLoader resolveClass()用法及代码示例
- Java ClassLoader findResources()用法及代码示例
注:本文由纯净天空筛选整理自Preeti Jain大神的英文原创作品 Java ClassLoader definePackage() method with example。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。