public class Reference extends Object implements Cloneable, Serializable
参考提供了一种记录有关对象的地址信息的方法,这些信息本身不直接绑定到命名/目录系统。
一个引用包含被引用的对象的地址和类信息的有序列表。列表中的每个地址都标识相同的概念对象的通信端点。“通信端点”是指示如何与对象联系的信息。它可以是,例如,一个网络地址,在本地机器上的内存的位置,在同一台机器上的另一个进程。列表中的地址的顺序可能是对解释参考的对象的重要意义。
多个地址可能会出现各种原因,如复制或对象提供一个以上的通信机制的接口。该地址是索引从零开始。
参考还包含了信息,以帮助创建此引用所引用的对象的实例。它包含该对象的类名称,以及用于创建对象的工厂的类别名称和位置。类工厂位置是用来加载工厂的类路径的一个空格分隔的目录列表。当工厂类(或任何它所依赖的类或资源)需要被加载时,每个网址都使用(为了)尝试加载类。
一个参考实例不同步对多个线程的并发访问。需要访问一个单一的参考的线程同时应同步之间的自己,并提供必要的锁定。
RefAddr
,
StringRefAddr
,
BinaryRefAddr
,
Serialized Form
Modifier and Type | Field and Description |
---|---|
protected Vector<RefAddr> |
addrs
包含此引用中包含的地址。
|
protected String |
classFactory
包含用于创建此引用引用的对象的实例的工厂类的名称。
|
protected String |
classFactoryLocation
包含工厂类的位置。
|
protected String |
className
包含此引用所引用的对象的类的完全限定名称。
|
Constructor and Description |
---|
Reference(String className)
为建立具有类名称的类名对象的一个新的参考”。
|
Reference(String className, RefAddr addr)
构建与类的名字“类名”和一个地址的对象的一个新的参考。
|
Reference(String className, RefAddr addr, String factory, String factoryLocation)
构建与类的名字“类名”的对象,一个新的参考,班级名称和对象的工厂位置,并对对象的地址。
|
Reference(String className, String factory, String factoryLocation)
构建与类的名字“类名”对象的一个新的参考,和类的名称和对象的工厂位置。
|
Modifier and Type | Method and Description |
---|---|
void |
add(int posn, RefAddr addr)
添加一个地址到地址列表索引位置。
|
void |
add(RefAddr addr)
在地址列表的结尾添加一个地址。
|
void |
clear()
从这个引用中删除所有地址。
|
Object |
clone()
使用它的地址类名称列表、类工厂名称和类工厂位置的引用的副本。
|
boolean |
equals(Object obj)
确定目标是一个具有相同地址的引用(在相同的顺序)作为参考。
|
RefAddr |
get(int posn)
在索引中检索输入的地址。
|
RefAddr |
get(String addrType)
获取第一个地址,地址类型的addrtype”。
|
Enumeration<RefAddr> |
getAll()
检索此引用中的地址的枚举数。
|
String |
getClassName()
检索此引用所引用的对象的类名称。
|
String |
getFactoryClassLocation()
检索此引用所引用的对象的工厂的位置。
|
String |
getFactoryClassName()
检索此引用所引用的对象的工厂的类名称。
|
int |
hashCode()
计算此引用的哈希代码。
|
Object |
remove(int posn)
删除从列表中的地址索引位置的地址。
|
int |
size()
检索此引用中的地址数。
|
String |
toString()
生成此引用的字符串表示形式。
|
protected String className
Class.getName()
protected String classFactory
protected String classFactoryLocation
public Reference(String className)
className
-非空类对象的名称,这个参考指。
public Reference(String className, RefAddr addr)
className
-非空类对象的名称,这个参考指。
addr
-对象的非空地址。
public Reference(String className, String factory, String factoryLocation)
className
-非空类对象的名称,这个参考指。
factory
-对象的工厂可能的空类的名称。
factoryLocation
-从加载工厂可能的空位置(例如URL)
ObjectFactory
,
NamingManager.getObjectInstance(java.lang.Object, javax.naming.Name, javax.naming.Context, java.util.Hashtable<?, ?>)
public Reference(String className, RefAddr addr, String factory, String factoryLocation)
className
-非空类对象的名称,这个参考指。
factory
-对象的工厂可能的空类的名称。
factoryLocation
-从加载工厂可能的空位置(例如URL)
addr
-对象的非空地址。
ObjectFactory
,
NamingManager.getObjectInstance(java.lang.Object, javax.naming.Name, javax.naming.Context, java.util.Hashtable<?, ?>)
public String getClassName()
public String getFactoryClassName()
public String getFactoryClassLocation()
public RefAddr get(String addrType)
addrType
-非零地址类型,找到地址。
public RefAddr get(int posn)
posn
-地址检索索引。
ArrayIndexOutOfBoundsException
如果位置不在指定的范围内的。
public Enumeration<RefAddr> getAll()
public int size()
public void add(RefAddr addr)
addr
-非零地址添加。
public void add(int posn, RefAddr addr)
posn
- 0开始索引列表的插入地址。
addr
-非零地址添加。
ArrayIndexOutOfBoundsException
如果位置不在指定的范围内的。
public Object remove(int posn)
posn
- 0索引地址删除。
ArrayIndexOutOfBoundsException
如果位置不在指定的范围内的。
public void clear()
public boolean equals(Object obj)
equals
方法重写,继承类
Object
obj
-检查可能的空对象。
Object.hashCode()
,
HashMap
public int hashCode()
hashCode
方法重写,继承类
Object
Object.equals(java.lang.Object)
,
System.identityHashCode(java.lang.Object)
public String toString()
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.