|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
java.lang.Objectjava.beans.Beans
public class Beans
此类提供一些通用的 bean 控制方法。
| 构造方法摘要 | |
|---|---|
Beans()
|
|
| 方法摘要 | |
|---|---|
static Object |
getInstanceOf(Object bean,
Class<?> targetType)
从给定 bean 中获得表示源对象的指定类型视图的对象。 |
static Object |
instantiate(ClassLoader cls,
String beanName)
实例化 JavaBean。 |
static Object |
instantiate(ClassLoader cls,
String beanName,
BeanContext beanContext)
实例化 JavaBean。 |
static Object |
instantiate(ClassLoader cls,
String beanName,
BeanContext beanContext,
AppletInitializer initializer)
实例化 bean。 |
static boolean |
isDesignTime()
测试是否正处于设计模式。 |
static boolean |
isGuiAvailable()
确定 bean 是否可以假定某个 GUI 是可用的。 |
static boolean |
isInstanceOf(Object bean,
Class<?> targetType)
检查是否可以将 bean 视为给定目标类型。 |
static void |
setDesignTime(boolean isDesignTime)
用于指示是否正运行在应用程序生成器环境中。 |
static void |
setGuiAvailable(boolean isGuiAvailable)
用于指示是否正运行在可进行 GUI 交互的环境中。 |
| 从类 java.lang.Object 继承的方法 |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| 构造方法详细信息 |
|---|
public Beans()
| 方法详细信息 |
|---|
public static Object instantiate(ClassLoader cls,
String beanName)
throws IOException,
ClassNotFoundException
实例化 JavaBean。
cls - 应该在其中创建 bean 的类加载器。如果该参数为 null,则使用系统类加载器。beanName - 类加载器中 bean 的名称。例如 "sun.beanbox.foobah"
ClassNotFoundException - 如果找不到序列化对象的类。
IOException - 如果发生 I/O 错误。
public static Object instantiate(ClassLoader cls,
String beanName,
BeanContext beanContext)
throws IOException,
ClassNotFoundException
实例化 JavaBean。
cls - 应该在其中创建 bean 的类加载器。如果该参数为 null,则使用系统类加载器。beanName - 类加载器中 bean 的名称。例如 "sun.beanbox.foobah"beanContext - 在其中嵌套新的 bean 的 BeanContext
ClassNotFoundException - 如果找不到序列化对象的类。
IOException - 如果发生 I/O 错误。
public static Object instantiate(ClassLoader cls,
String beanName,
BeanContext beanContext,
AppletInitializer initializer)
throws IOException,
ClassNotFoundException
基于相对于某个类加载器的名称创建 bean。此名称应该是以句点分隔的名称,例如 "a.b.c"。
在 Beans 1.0 中,给定名称可以指示一个序列化对象或一个类。其他机制可以在将来添加。在 beans 1.0 中,首先试着将 beanName 作为序列化的对象名称对待,然后将它作为类名称对待。
在将 beanName 用作序列化对象名称时,要将给定的 beanName 转换为资源路径名,并添加后缀 ".ser"。然后试着从该资源加载序列化对象。
例如,给定一个 beanName "x.y",Beans.instantiate 首先将试着从资源 "x/y.ser" 中读取一个序列化对象,如果失败,它会试着加载类 "x.y" 并创建该类的一个实例。
如果 bean 是 java.applet.Applet 的子类型,则为它提供一些特殊的初始化。首先,向它提供默认的 AppletStub 和 AppletContext。其次,如果根据类名称实例化 bean,则调用 applet 的 "init" 方法。(如果 bean 被反序列化,则跳过此步骤。)
注意,对于作为 applet 的 bean,由调用者负责在 applet 上调用 "start"。为了运转正常,应该在已经将 applet 添加到可见 AWT 容器中后执行该步骤。
注意,通过 beans.instantiate 创建的 applet 运行在与浏览器中运行的 applet 稍有不同的环境中。尤其要指出的是,bean applet 无法访问 "parameters",因此它们可能希望提供属性 get/set 方法来设置参数值。建议 bean-applet 开发人员对照 JDK appletviewer(对于引用浏览器环境)和 BDK BeanBox(对于引用 bean 容器)来测试他们的 bean-applet。
cls - 应该在其中创建 bean 的类加载器。如果该参数为 null,则使用系统类加载器。beanName - 类加载器中 bean 的名称。例如 "sun.beanbox.foobah"beanContext - 在其中嵌套新 bean 的 BeanContextinitializer - 用于新 bean 的 AppletInitializer
ClassNotFoundException - 如果找不到序列化对象的类。
IOException - 如果发生 I/O 错误。
public static Object getInstanceOf(Object bean,
Class<?> targetType)
结果可能是相同的对象或不同的对象。如果所请求的目标视图不可用,则返回给定 bean。
此方法在 Beans 1.0 中作为一个钩子 (hook) 提供,以允许以后添加更灵活的 bean 行为。
bean - 想从中获得视图的对象。targetType - 想获得的视图类型。
public static boolean isInstanceOf(Object bean,
Class<?> targetType)
bean - 想从中获得视图的 bean。targetType - 想获得的视图类型。
public static boolean isDesignTime()
DesignModepublic static boolean isGuiAvailable()
Visibility
public static void setDesignTime(boolean isDesignTime)
throws SecurityException
注意,此方法是经过安全检查的,不可以用于(例如)不受信任的 applet。更明确地说,如果有安全管理器,则调用其 checkPropertiesAccess 方法。这可能会导致 SecurityException 异常。
isDesignTime - 如果正在使用应用程序生成器工具,则该参数为 true。
SecurityException - 如果安全管理器存在并且其 checkPropertiesAccess 方法不允许设置系统属性。SecurityManager.checkPropertiesAccess()
public static void setGuiAvailable(boolean isGuiAvailable)
throws SecurityException
注意,此方法是经过安全检查的,不可以用于(例如)不受信任的 applet。更明确地说,如果有安全管理器,则调用其 checkPropertiesAccess 方法。这可能会导致 SecurityException 异常。
isGuiAvailable - 如果可以进行 GUI 交互,则该参数为 true。
SecurityException - 如果安全管理器存在并且其 checkPropertiesAccess 方法不允许设置系统属性。SecurityManager.checkPropertiesAccess()
|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。