当前位置: 首页 > news >正文

个人网站创建与管理网页游戏在哪里制作

个人网站创建与管理,网页游戏在哪里制作,织梦 别人 网站 模板,公关公司网站关于parcel#xff0c;我们先来讲讲它的“父辈” Serialize。 Serialize 是java提供的一套序列化机制。但是为什么要序列化#xff0c;怎么序列化#xff0c;序列化是怎么做到的#xff0c;我们将在本文探讨下。 一#xff1a;java 中的serialize 关于Serialize这个东东我们先来讲讲它的“父辈” Serialize。 Serialize 是java提供的一套序列化机制。但是为什么要序列化怎么序列化序列化是怎么做到的我们将在本文探讨下。 一java 中的serialize 关于Serialize这个东东think in java其实说的很详细大意如下 1.Serialize的目的 当你创建对象时你需要它一直存在但是当程序终止时它就消失了。 如果程序不运行的情况下可以保存某些信息这将非常有用。 如何我程序在下次运行的时候可以把上次运行的某些信息恢复回来. 2.Serialize的使用  使用一个嵌套的Serializable对象 package com.joyfulmath.androidstudy.bind.worm;import java.io.Serializable;public class Data implements Serializable {private int n;public Data(int n) {this.n n;}Overridepublic String toString() {return Integer.toString(n);}} package com.joyfulmath.androidstudy.bind.worm;import java.io.Serializable; import java.util.Random;import com.joyfulmath.androidstudy.TraceLog;public class Worm implements Serializable {static Random rand new Random(47);Data[] d {new Data(rand.nextInt(10)),new Data(rand.nextInt(10)),new Data(rand.nextInt(10))};private Worm next;private char c;public Worm(int i, char x){TraceLog.i(Worm construct:i);c x;if(--i0){next new Worm(i,(char) (x1));}}public Worm(){TraceLog.i(default Worm construct);}Overridepublic String toString() {StringBuilder result new StringBuilder(:);result.append(c);result.append(();for(Data dat:d){result.append(dat );}result.append());if(next!null){result.append(next);}return result.toString();}} 验证序列化的读写 import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream;import com.joyfulmath.androidstudy.TraceLog;public class WormSample {static final String path /mnt/sdcard/worm.out;public void doAction(){Worm w new Worm(6, a);TraceLog.i(\nw.toString());try {ObjectOutputStream opt new ObjectOutputStream(new FileOutputStream(path));opt.writeObject(Worm object\n);opt.writeObject(w);opt.close();ObjectInputStream in new ObjectInputStream(new FileInputStream(path));String s (String) in.readObject();Worm w2 (Worm) in.readObject();TraceLog.i(sw);} catch (FileNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (ClassNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();}} } 最后log 08-15 09:18:20.384: I/Worm(28437): init: Worm construct:6 [at (Worm.java:21)] 08-15 09:18:20.384: I/Worm(28437): init: Worm construct:5 [at (Worm.java:21)] 08-15 09:18:20.384: I/Worm(28437): init: Worm construct:4 [at (Worm.java:21)] 08-15 09:18:20.384: I/Worm(28437): init: Worm construct:3 [at (Worm.java:21)] 08-15 09:18:20.384: I/Worm(28437): init: Worm construct:2 [at (Worm.java:21)] 08-15 09:18:20.384: I/Worm(28437): init: Worm construct:1 [at (Worm.java:21)] 08-15 09:18:20.384: I/WormSample(28437): doAction: 08-15 09:18:20.384: I/WormSample(28437): :a(853):b(119):c(802):d(788):e(199):f(881) [at (WormSample.java:18)] 08-15 09:18:20.414: I/WormSample(28437): doAction: Worm object 08-15 09:18:20.414: I/WormSample(28437): :a(853):b(119):c(802):d(788):e(199):f(881) [at (WormSample.java:28)] 可以看到数据被很好的还原了包含内部的序列化对象   二parcel Serializable是java定义的一套序列化机制但是他是操作文件来执行的。或者说它的性能无法满足android上的要求 这样parcel被google发明出来用以取代Serializable。 1.Parcelable 的使用 package com.joyfulmath.androidstudy.bind.worm;import android.os.Parcel; import android.os.Parcelable;public class DataP implements Parcelable {public int n;public DataP(int n) {this.n n;}Overridepublic int describeContents() {return 0;}Overridepublic void writeToParcel(Parcel dest, int flags) {dest.writeInt(n);}public static final Parcelable.CreatorDataP CREATOR new Parcelable.CreatorDataP() {public DataP createFromParcel(Parcel in) {return new DataP(in);}public DataP[] newArray(int size) {return new DataP[size];}};private DataP(Parcel in) {n in.readInt();}Overridepublic String toString() {return Integer.toString(n);}} package com.joyfulmath.androidstudy.bind.worm;import java.util.Random;import com.joyfulmath.androidstudy.TraceLog;import android.os.Parcel; import android.os.Parcelable;public class WormP implements Parcelable {static Random rand new Random(47);public DataP[] d { new DataP(rand.nextInt(10)), new DataP(rand.nextInt(10)),new DataP(rand.nextInt(10)) };private WormP next;public byte c;public WormP(int i,byte x){TraceLog.i(Wormp construct:i);c x;if(--i0){next new WormP(i,(byte) (x1));}}Overridepublic int describeContents() {return 0;}Overridepublic void writeToParcel(Parcel dest, int flags) {dest.writeByte(c);dest.writeParcelableArray(d, 0);if (next ! null) {dest.writeParcelable(next, 0);}}public static final Parcelable.CreatorWormP CREATOR new Parcelable.CreatorWormP() {public WormP createFromParcel(Parcel in) {return new WormP(in);}public WormP[] newArray(int size) {return new WormP[size];}};private WormP(Parcel in) {c in.readByte();d (DataP[]) in.readParcelableArray(DataP.class.getClassLoader());}Overridepublic String toString() {StringBuilder result new StringBuilder(:);result.append(c);result.append(();for(DataP dat:d){result.append(dat );}result.append());if(next!null){result.append(next);}return result.toString();} } parcel一般使用在intent的内容的传递所以本处做一个简单的模拟 public void doActionP(){TraceLog.i();byte a a;WormP w new WormP(6, a);TraceLog.i(w.toString());Intent intent new Intent();intent.putExtra(wormp, w);///...Intent newIntent new Intent(intent);WormP w2 newIntent.getParcelableExtra(wormp);TraceLog.i(w2.toString());TraceLog.i(end);} 08-15 10:14:11.924: I/WormSample(20183): doActionP: [at (WormSample.java:47)] 08-15 10:14:11.934: I/WormP(20183): init: Wormp construct:6 [at (WormP.java:21)] 08-15 10:14:11.934: I/WormP(20183): init: Wormp construct:5 [at (WormP.java:21)] 08-15 10:14:11.934: I/WormP(20183): init: Wormp construct:4 [at (WormP.java:21)] 08-15 10:14:11.934: I/WormP(20183): init: Wormp construct:3 [at (WormP.java:21)] 08-15 10:14:11.934: I/WormP(20183): init: Wormp construct:2 [at (WormP.java:21)] 08-15 10:14:11.934: I/WormP(20183): init: Wormp construct:1 [at (WormP.java:21)] 08-15 10:14:11.934: I/WormSample(20183): doActionP: :97(8 5 3 ):98(1 1 9 ):99(8 0 2 ):100(7 8 8 ):101(1 9 9 ):102(8 8 1 ) [at (WormSample.java:50)] 08-15 10:14:11.934: I/WormSample(20183): doActionP: :97(8 5 3 ):98(1 1 9 ):99(8 0 2 ):100(7 8 8 ):101(1 9 9 ):102(8 8 1 ) [at (WormSample.java:59)] 08-15 10:14:11.934: I/WormSample(20183): doActionP: end [at (WormSample.java:61)] 可以看到结果数据完全正确。 以上就是parcel的使用方式在下一篇将探索parcel的实现方式。   参考 http://blog.csdn.net/niu_gao/article/details/6451699  转载于:https://www.cnblogs.com/deman/p/4742995.html
http://mrfarshtey.net/news/46484/

相关文章:

  • 域名做网站全自动精准引流软件
  • 公司给别人做的网站违法吗动画设计师资格证
  • 高端的科技网站建设易企秀类似的软件
  • 制作网页网站艺术网站模板
  • 外贸网站一般用什么框架韩国展厅设计网站
  • 网站流量怎么变现呢四川省建设网招标公告
  • 家居企业网站建设讯息推广营销软件app
  • 专做商业平台网站深圳网站开发定制
  • 郑州网站建设哪家最好wordpress 采集发布
  • 通过模版做网站tk网站域名
  • 开发网站流程网络营销案例文章
  • 高端品牌网站设计欣赏网站做404好处
  • 子网站建设html5网站图标
  • 环球旅行社网站建设规划书ui设计师mike个人网站
  • 建个好网站国内代理ip地址 免费
  • 做电影收费网站百度网址大全 简单版
  • 请人开发网站多少钱网页制作是干嘛的
  • wordpress建站实例做h5网站
  • 阿勒泰地区网站seo综合查询工具可以查看哪些数据
  • 太原网站定制网站建设可以自己建设服务器吗
  • 怎么做谷歌收录的网站吗网站管理有哪些
  • 网站建设相关合同内容网页升级访问紧急升级访问中
  • 列举网站建设的SEO策略在哪找专业做淘宝网站
  • 中间商网站怎么做建筑网站绿地新里城
  • 视频网站点击链接怎么做的长宁移动网站建设
  • 网站域名 英文成都网站开发的公司
  • 传奇网站免费空间h5商城网站建设是什么
  • 济宁网站开发平台深圳专业网站建设产品运营之中的广度讲解
  • 专业做网站 上海密云城市建设官方网站
  • 招商加盟网站模板程序温州网站建设和运营