java uid 是什么意思,UID是什么意思
大家好,java uid 是什么意思相信很多的网友都不是很明白,包括UID是什么意思也是一样,不过没有关系,接下来就来为大家分享关于java uid 是什么意思和UID是什么意思的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!
UID是什么意思啊、/
UID: user identifoer(用户标识符)的缩写在网络上ID一般指帐号,UID一般是与该帐号相关联的一个唯一数字编号。
UID用户身份证明(User Identification)的缩写。
在网络上ID一般指帐号,UID一般是与该帐号相关联的一个唯一数字编号。UID用户在注册会员后,系统会自动的给你一个UID的数值。意思就是给这名用户编个号。
uid的作用一般是用来描述网站用户名的序号UserID。它可能出现在HTML代码中,但不是HTML的专有词句。就像java语言里的变量名一样,是用户定义的。这个和html没关系,uid是动态程序里面的变量名。
《java类中的serialVersionUID是什么作用》的评论
类中影响Serialization进程的特征,两边的操作使用的类版本不同,但它们的 serialVersionUID必须是一样的。它是用来识别两边的类是否兼容的,两边不同时不应该继续还原状态,而是应该停止下来,因为有人把事情搞错了。如果你的类没有实现 java.io.Serializable或 java.io.Externalizable,这个字段则没有意义。
如果你没听说过 Java Serialization(序列化,有人书翻译成串行化),那去找些 serialization介绍看看,下面说的第2段类结构变化时是中级水平的,理解 Java的一些细节才能理解,多数情况下人们只提到第一种情况(类的结构没有变化时),也只需要第一种情况。
当Serialization两端(比如Socket两端)使用一个类的不同版本时,我们必须提供 serialVersionUID,它可以用JDK自带的 serialver命令行来计算:
private static final long serialVersionUID= xxxx;
如果类中出现了下面两个方法,那么将会被用到,否则使用默认的实现:
private void readObject(ObjectInputStream) throws IOException,ClassNotFoundException;
private void writeObject(ObjectOutputStream)throws IOException;
记住这里出现的方法和字段都是 private.
新版本中仅增加了字段或方法而没有改变旧版本中已有的东西时,我们只要保证两个版本中的 serialVersionUID是一样的就行了.
具体样例可以看 JDK源码中的像 ArrayList这些类的代码的 readObject和 writeObject方法。
类的结构有些变化时,新版本对旧版本中某些东西进行了删减时, Field的变化我们需要在readObject和writeObject方法中进行处理
ObjectOutputStream.PutField类可达到这个目的
只是保证两个版本中的 serialVersionUID一致是行不通的
类中必需两个常量:
private static final long serialVersionUID;
private static final ObjectStreamField[] serialPersistentFields
下面样例是当客户端和服务端使用的类的版本不同并且类的结构也改变了,比如:
1
2
3
4
5
6
7
8
9
10
11
12
13
对方使用的类 Entry是:
public class Entry12...{
private String name, email;
private static final long serialVersionUID= 12L;
}
现在我们改变了类的设计了:
public class Entry12...{
private EntryInternal basic;
private static final long serialVersionUID= 12L;
private class EntryInternal{
private String name, email;
}
}
/*这是一段代码片段,我们假设新版本的类 name& email两个字段进行了修改
*(这里我们放到一个内部类EntryInternal中),而旧版本中直接属于这个类.
*
*请注意这里的字段和方法的签名,它们都是 private的或者是常量.
*/
public class Entry12 implements Serializable{
private EntryInternal pair= new EntryInternal();
/*这是必要的,因为版本不同*/
private static final long serialVersionUID= 12L;
**这也是必要的,否则写 putFields时会抛出异常.
* This field will be used by{@link#writeObject(ObjectOutputStream)},
* if this field is missing, follwing exception will be threw when invoke
*{@link java.io.ObjectOutputStream.PutField#put(String,)}:
* an exception‘java.lang.IllegalArgumentException: No such object field’ will be threw.
*/
private static final ObjectStreamField[] serialPersistentFields= new ObjectStreamField[]{
new ObjectStreamField("name", String.class),//
new ObjectStreamField("email", String.class),//
};
/*我们在这里不是直接写出字段,而把要写出的字段包装起来,
我们按需交换字段,而不是直接读写pair这个字段.
*/
private void readObject(ObjectInputStream input) throws IOException, ClassNotFoundException{
ObjectInputStream.GetField getFields= input.readFields();
/*请注意:使用 Serializable进行交换时不使用构造方法,所以这时 pair还未初始化.*/
pair= new EntryInternal();
pair.name=(String) getFields.get("name", null);
pair.email=(String) getFields.get("email", null);
}
/*写出时跟读入时一样*/
private void writeObject(ObjectOutputStream output) throws IOException{
ObjectOutputStream.PutField putFields= output.putFields();
putFields.put("name", pair== null? null: pair.name);
putFields.put("email", pair== null? null: pair.email);
output.writeFields();
}
…..
}
serialVersionUID是什么
serialVersionUID:意思是序列化的版本号。
【作用】一些java类中为什么需要重载 serialVersionUID属性。在Java中,软件的兼容性是一个大问题,尤其在使用到对象串行性的时候,那么在某一个对象已经被串行化了,可是这个对象又被修改后重新部署了,那么在这种情况下,用老软件来读取新文件格式虽然不是什么难事,但是有可能丢失一些信息。serialVersionUID来解决这些问题,新增的serialVersionUID必须定义成下面这种形式:static final long serialVersionUID=-2805284943658356093L;。其中数字后面加上的L表示这是一个long值。通过这种方式来解决不同的版本之间的串行话问题。
【生成方式】它有两种显示的生成方式:
一个是默认的1L,比如:private static final long serialVersionUID= 1L;。
一个是根据类名、接口名、成员方法及属性等来生成一个64位的哈希字段,比如:private static final long serialVersionUID= xxxxL。
UID是什么意思
UID: user identifoer(用户标识符)的缩写,在网络上ID一般指帐号,UID一般是与该帐号相关联的一个唯一数字编号。论坛一般都设有ID和UID,个人资料里可以查看。
扩展资料
UID其他意思
1、UI设计师
UID是英文:user interface designer的简称;中文名字:UI设计师。
UI设计师是指从事对软件的人机交互、操作逻辑、界面美观的整体设计工作的人。目前UI设计师主要从事移动终端的界面化设计和交互式应用。
2、工程UID
工程设计中UID(Utility Instrument Diagram)是指公用工程管道仪表流程图,一般公用工程管道包含在管道仪表流程图(PID)中,但当公用工程管道较多时,可单独画,称作UID。
3、塞班UID
在塞班操作系统(symbian)中界面、程序等项目都分配了一个uid,理论上有唯一性,不应该重复,这个uid是0x加上一组8位字串组成的,这8位字串是一个16进制的数值。UID的分配是由symbian公司来管理的,用unmakesis可以查看。
4、德国UID
德国UID(User Interface Design)公司是一家涉及多领域的具有创造力的服务和咨询公司,专业从事使用性领域的概念设计、草图设计及调整测试。总部在德国路德维希堡。UID是11月3日是“世界使用性日”创始者。
参考资料来源:百度百科—UID
好了,文章到这里就结束啦,如果本次分享的java uid 是什么意思和UID是什么意思问题对您有所帮助,还望关注下本站哦!