仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 657|回复: 12
打印 上一主题 下一主题

[学习教程] 发布一篇对J2SE中的序列化的一个理性的熟悉

[复制链接]
分手快乐 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:19:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
再说第三点:我并没有提到服务器也要整合,然后是IDE,一个好的IDE能够200%提高开发的速度,就说图形方面:你是经过简单托拽和点击就能实现功能好那。
java中到处表现着复杂的程序计划作风,序列化作为最经常使用的功效之一,在java中的计划尤其“复杂”。在ObjectInputStream和ObjectOutputStream的匡助下,我们能够轻松的完成序列化。
只需我们的class完成了java.io.Serializable接口,就能够使用ObjectOutputStream的writeObject()办法将一个对象序列化;使用ObjectInputStream的readObject()办法,能够前往读出的object对象。Serializable接口不必要我们完成任何办法。
以下是一个例子,它能给我们一个理性的熟悉:
Serial完成了就java.io.Serializable接口,是必要序列化的类。我们起首机关一个Serial的对象serial1然后将其保留(序列化)在一个文件中,尔后再将其读出(反序列化),并打印其内容。
packageStream;
/**
*@authorfavoyang
*/
importjava.io.*;
publicclassSerialimplementsSerializable{
 intcompany_id;
 Stringcompany_addr;
 booleancompany_flag;
 publicSerial(){}//分歧于c++,没有也能够
 publicSerial(intcompany_id,Stringcompany_addr,booleancompany_flag){
  this.company_id=company_id;
  this.company_addr=company_addr;
  this.company_flag=company_flag;
 }
 publicstaticvoidmain(String[]args){
  Serialserial1=newSerial(752,"dayerstreet#5building02-287",false);//机关一个新的对象
  FileInputStreamin=null;
  FileOutputStreamout=null;
  ObjectInputStreamoin=null;
  ObjectOutputStreamoout=null;
  try{
   out=newFileOutputStream("5.txt");
   oout=newObjectOutputStream(out);
   serial1.serialize(oout);//序列化
   oout.close();
   oout=null;
   in=newFileInputStream("5.txt");
   oin=newObjectInputStream(in);
   Serialserial2=Serial.deserialize(oin);//反序列化
   System.out.println(serial2);//打印了局
  }catch(Exceptionex){
   ex.printStackTrace();
  }finally{
   try{
    if(in!=null){
     in.close();
    }
    if(oin!=null){
     oin.close();
    }
    if(out!=null){
     out.close();
    }
    if(oout!=null){
     oout.close();
    }
   }catch(IOExceptionex1){
    ex1.printStackTrace();
   }
  }
 }
 /**
 *deserialize
 */
 publicstaticSerialdeserialize(ObjectInputStreamoin)throwsException{
  Serials=(Serial)oin.readObject();
  returns;
 }
 publicStringtoString(){
  return"DATA:"+company_id+""+company_addr+""+company_flag;
 }
 /**
  *serialize
 */
 publicvoidserialize(ObjectOutputStreamoout)throwsException{
  oout.writeObject(this);
 }
}
运转了局:
DATA:752dayerstreet#5building02-287false
准确打印了却果。

前些天,在CSDN上看到了一个消息,说是net网页编程网页编程AJAX成功在Linux上运行,这一点对我触动很大,而且引发了我许多感叹,所以想写出来分享一下。
谁可相欹 该用户已被删除
沙发
发表于 2015-1-19 23:05:54 | 只看该作者
如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。
admin 该用户已被删除
板凳
发表于 2015-1-25 08:21:23 | 只看该作者
Java 编程语言的风格十分接近C、C++语言。
柔情似水 该用户已被删除
地板
发表于 2015-2-2 16:42:31 | 只看该作者
有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)
爱飞 该用户已被删除
5#
发表于 2015-2-5 15:52:55 | 只看该作者
你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。
老尸 该用户已被删除
6#
发表于 2015-2-9 12:12:26 | 只看该作者
Java是一种计算机编程语言,拥有跨平台、面向对java
愤怒的大鸟 该用户已被删除
7#
发表于 2015-2-10 01:45:18 | 只看该作者
其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。
若相依 该用户已被删除
8#
发表于 2015-2-15 01:11:28 | 只看该作者
是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言
乐观 该用户已被删除
9#
发表于 2015-2-26 03:11:52 | 只看该作者
Java 编程语言的风格十分接近C、C++语言。
再现理想 该用户已被删除
10#
发表于 2015-3-8 11:37:25 | 只看该作者
任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言
变相怪杰 该用户已被删除
11#
发表于 2015-3-11 18:15:33 | 只看该作者
当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?
飘飘悠悠 该用户已被删除
12#
发表于 2015-3-19 06:35:22 | 只看该作者
是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言
海妖 该用户已被删除
13#
发表于 2015-3-27 10:18:21 | 只看该作者
其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-15 17:01

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表