Java Serialization transient
1. ʲôÊÇSerialization?
´®Ðл¯(Serialization)ÊǼÆËã»ú¿ÆÑ§ÖеÄÒ»¸ö¸ÅÄËüÊÇÖ¸½«¶ÔÏó´æ´¢µ½½éÖÊ£¨ÈçÎļþ¡¢ÄÚÔÚ»º³åÇøµÈ£©ÖлòÊÇÒÔ¶þ½øÖÆ·½Ê½Í¨¹ýÍøÂç´«Êä¡£Ö®ºó ¿ÉÒÔͨ¹ý·´´®Ðл¯´ÓÕâЩÁ¬ÐøµÄλÊý¾ÝÖØÐ¹¹½¨Ò»¸öÓëÔʼ¶ÔÏó״̬ÏàͬµÄ¶ÔÏó£¬Òò´ËÔÚÌØ¶¨Çé¿öÏÂÒ²¿ÉÒÔ˵Êǵõ½Ò»¸ö¸±±¾£¬µ«²¢²»ÊÇËùÓÐÇé¿ö¶¼ÕâÑù¡£
JavaÓÐSerialization APIΪ¿ª·¢ÕßÌṩÁËÒ»ÖÖ±ê×¼µÄ»úÖÆÀ´´®Ðл¯Àà¡£
2. ΪʲôҪSerilzation?
ÌØ±ðµØ£¬´®Ðл¯Ö÷ÒªÓÐÈýÖÖÓÃ;£º
1£©×÷ΪһÖֳ־û¯»úÖÆ
Èç¹ûʹÓõÄÊÇFileOutputStreamÁ÷µÄ·½Ê½£¬ÔòÊý¾Ý½«±»×Ô¶¯µØÐ´ÈëÎļþÖУ¬
2£©×÷ΪһÖÖ¸´ÖÆ»úÖÆ
Èç¹ûʹÓõÄÊÇByteArrayOutputStreamÁ÷µÄ·½Ê½£¬Êý¾Ý½«Ð´ÈëÄÚ´æÖеÄ×Ö½ÚÊý×éÖС£¸Ã×Ö½ÚÊý×é¿ÉÒÔÓÃÀ´´´½¨³õʼ¶ÔÏóµÄ¸±±¾£¬
3£©×÷ΪһÖÖͨÐÅ»úÖÆ
Èç¹ûÊÇʹÓÃÌ×½Ó×Ö£¨Socket£©Á÷µÄ·½Ê½£¬ÔòÊý¾Ý×Ô¶¯µØÍ¨¹ýÍøÂçÁ¬½Ó´«ÊäÒ»ÁíÒ»¸ö¶Ëµã£¬²¢ÓÉÕâ¸ö¶ËµãÉϵijÌÐòÀ´¾ö¶¨×öʲô¡£
3. SerializationµÄ»ù±¾Ó÷¨£ºÄ¬ÈÏ»úÖÆ
½«Òª´®Ðл¯µÄÀà±ØÐëʵÏÖjava.io.Serializable½Ó¿Ú£¬»òÕßÊǼ̳ÐʵÏÖÁ˸ýӿڵÄÀࡣȻºóͨ¹ýjava.io.ObjectOutputStreamÀàÀ´ÊµÏֳ־û¯£¬Èç¹ûÓñ£´æµ½ÎļþÉÏ»¹ÐèÒªÓõ½java.io.FileOutputStreamÀà¡£ÒòΪObjectOutputStream±»ÈÏΪÊÇjava.io°üÖеĸ߼¶ÀàËùÒÔ¿ÉÓÃËüÀ´°ü×°µÍ¼¶µÄÀàFileOutputStream¡£Ôڳ־û¯¹ý³ÌÖе÷ÓõÄÒ»¸ö·½·¨ÊÇObjectOutputStream¶ÔÏóµÄwriteObject(obj)·½·¨¡£
µ±Òª´ÓÎļþÖлָ´¶ÔÏóʱ£¬ÔòÊÇʹÓÃjava.io.OjbectInputStreamÓëFileInputStreamÀ࣬µ÷ÓÃÒ»·½·¨ÊÇObjectInputStream¶ÔÏóµÄreadObject()·½·¨¡£
ʾÀý1£º
/*¶¨ÒåÒ»¸öʵÏÖÁËSerializable½Ó¿ÚµÄÀࣺCat*/
import java.io.*;
public class Cat implements Serializable {
private String name;
public Cat () {
this.name = "new cat";
}
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
}
/*½«CatÀàµÄ¶ÔÏó´®Ðл¯Óë·´´®Ðл¯*/
import java.io.*;
public class CatDemo {
public st
Ïà¹ØÎĵµ£º
ƪÎÄÕÂÊÇ×î½ü¸Õ¿´µ½µÄ£¬ËäÈ»ÊÇ˵³ÌÐòÔ±´ÓC++תJAVAÐèҪעÒâµÄµØ·½£¬µ«ÊǺÜÏêϸµÄ˵³öÁËC++ºÍJAVAµÄ²»Í¬µÄµØ·½£¬¶ÔÓÚJAVAÖÐΪʲôûÓÐÖ¸Õ롢ΪʲôûÓÐÄÚ´æÐ¹Â¶¡¢½Ó¿ÚºÍC++ÖжàÖØ¼Ì³ÐµÄ¹ØÏµ¡¢Òì³£»úÖÆµÈÎÊÌâÒ²ÃèÊöµÄºÜÏêϸ£¬¹Ê×ªÔØ¹ýÀ´¡£
1.JavaÔÚÐéÄâ»úÉÏÔËÐÐ
JavaÔ´´úÂë²¢²»ÊDZ»±àÒë³ÉΪÆÕͨµÄ»úÆ÷´úÂë¡£¶øÊDZ»·Òë³ÉÎ ......
JavaÓïÑÔµÄ26¸öϸ½Ú[×ªÔØ]
Java×÷ΪһÃÅÓÅÐãµÄÃæÏò¶ÔÏóµÄ³ÌÐòÉè¼ÆÓïÑÔ,ÕýÔÚ±»Ô½À´Ô½¶àµÄÈËʹÓᣱ¾ÎÄÊÔͼÁгö×÷ÕßÔÚʵ¼Ê¿ª·¢ÖÐÅöµ½µÄһЩJavaÓïÑÔµÄÈÝÒ×±»È˺öÊÓµÄϸ½Ú,Ï£ÍûÄܸøÕýÔÚѧϰJavaÓïÑÔµÄÈËÓÐËù°ïÖú¡£
1£¬Î»ÒÆÔËËãÔ½½çÔõô´¦Àí
¿¼²ìÏÂÃæµÄ´úÂëÊä³ö½á¹ûÊǶàÉÙ?
int a=5;
......
ʹÓÃRuntime.getRuntime().exec()·½·¨¿ÉÒÔÔÚjava³ÌÐòÀïÔËÐÐÍⲿ³ÌÐò.
¸Ã·½·¨ÓÐ6¸ö¿É·ÃÎʰ汾:
1.exec(String command)
2.exec(String command, String envp[], File dir)
3.exec(String cmd, &n ......
xmlÎļþÈçÏ ÅäÖù¦ÄÜ¿ª¹Ø
<Configurations>
<Samples>true</Samples>
<Excepts>true</Excepts>
<CheckFace>false</CheckFace>
<ThumbNail>false</ThumbNail>
&nbs ......
#include <iostream>
using namespace std;
class Base {
public:
virtual void fn(int x) {
cout << "In Base class, int x = " << x << endl;
}
};
class SubClass : public Base {
public:
// º¯ÊýµÄÖØÔØ,ÕâÑùµÄÖØÔØ·½Ê½,ÔÚJavaÖÐÄÜÐÐ,ÔÚC/C++ÖÐÈ´²»ÐÐ
virt ......