
JDK 中的 Properties 类 Properties 类存在于胞 Javautil 中,该类继承自 Hashtable ,它提供了几个主要的方法:
1. getProperty ( String key) , 用指定的键在此属性列表中搜索属性。也就是通过参数 key ,得到 key 所对应的 value。
2. load ( InputStream inStream) ,从输入流中读取属性列表(键和元素对)。通过对指定的文件(比如说上面的 testproperties 文件)进行装载来获取该文件中的所有键 - 值对。以供 getProperty ( String key) 来搜索。
3. setProperty ( String key, String value) ,调用 Hashtable 的方法 put 。他通过调用基类的put方法来设置 键 - 值对。
4. store ( OutputStream out, String comments) , 以适合使用 load 方法加载到 Properties 表中的格式,将此 Properties 表中的属性列表(键和元素对)写入输出流。与 load 方法相反,该方法将键 - 值对写入到指定的文件中去。
5. clear () ,清除所有装载的 键 - 值对。该方法在基类中提供。
嗯嗯,我想你说的应该是要把id的值传到控制层去吧,如果你的控制层是Struts的话,那好办啊,只要用Javascript拿到id的值,再传到Action里面去就行了,呵呵,期待你的成功!
1、如果只有get,那么这个属性就是只读的(就是说只能读,无法给它赋值);
如果只有set,那么这个属性就是只写的(只能赋值,无法读取,这种情况比较少见);
有get也有set,则该属性可读可写。
2、不是的,get是获取属性的值,而set是给属性赋值。
3、函数只能读取值,但你没法给函数赋值。
4、区别见第3点。
其实给类设置属性,就使类具备了类似控件的一些特性,比如我们可以从Label1Caption获取Label1的文字内容,也可以通过给Label1Caption赋值来改变Label1的文字内容;同样,如果给类abc设置一个可读可写的属性x,那么我们可以通过abcx来获取这个属性的值,也可以通过给abcx直接赋值来改变这个属性的值。
关键词: RTTI
最终你可以调用如下函数,获取 你需要的@TMemogetText
GetProc: Pointer; // 属性的 Get 方法指针
SetProc: Pointer; // 属性的 Set 方法指针
function GetTypeData(TypeInfo: PTypeInfo): PTypeData; assembler;
class 的 TTypeData 结构如下:
TTypeData = packed record
case TTypeKind of
tkClass: (
ClassType: TClass; // 类 (VMTptr)
ParentInfo: PPTypeInfo; // 父类的 RTTI 指针
PropCount: SmallInt; // 属性数量
UnitName: ShortStringBase; // 单元的名称
{PropData: TPropData}); // 属性的详细信息
end;
其中的 PropData 又是一个大小可变的字段。TPropData 的定义如下:
TPropData = packed record
PropCount: Word; // 属性数量
PropList: record end; // 占位符,真正的意义在下一行
{PropList: array[1PropCount] of TPropInfo}
end;
每个属性信息在内存中的结构就是 TPropInfo,它的定义如下:
PPropInfo = ^TPropInfo;
TPropInfo = packed record
PropType: PPTypeInfo; // 属性类型信息指针的指针
GetProc: Pointer; // 属性的 Get 方法指针
SetProc: Pointer; // 属性的 Set 方法指针
StoredProc: Pointer; // 属性的 StoredProc 指针
Index: Integer; // 属性的 Index 值
Default: Longint; // 属性的 Default 值
NameIndex: SmallInt; // 属性的名称索引(以 0 开始计数)
Name: ShortString; // 属性的名称
end;
<script>
function getValue()
{
alert(documentgetElementById("id1")value);
}
</script>
首先确认一下,是否在jsp页面中,添加了struts2标签的引用: <%@ taglib prefix="s" uri="/struts-tags" %>;
然后再检查一下,在Action实现类中,是否定义的test属性及get/set方法;
Property用于标识一个类成员为属性而不是方法属性可以被获取,属性在被获以的时候利用get句柄返回其值属性可以被赋值,这个过程是由set句柄完成的这两个句柄可以不同时存在如果只有get而没有set,那属性就是只读的如果只有set而没有get,那属性就是只写的
以上就是关于property在Java中的用法全部的内容,包括:property在Java中的用法、能从程序里取到struts标签<s:porperty>的值吗如要取得<s:property value="id"/>中id的值该怎么取、VB中Property语句详细说明等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)