摘要:
众所周知,java.io.InputStream是不可序列化的,但是如何序列化一个带有InputStream的类呢?可以通过将流转换成字节数组来实现,这里利用序列化的机制来实现。在java.io.Serializable这个标记接口的API中有这样的描述:在序列化和反序列化过程中需要特殊处理的类必须使用下列准确签名来实现特殊方法: private void writeObject(java.io.ObjectOutputStream out) throws IOException private void readObject(java.io.ObjectInputStream in) thr 阅读全文
摘要:
对于int的switch,jvm是用tableswitch和lookupswitch来实现的,jdk1.7 switch增加了对string的支持,那么底层是如何实现的呢?是否增加了新的指令或是否给某些指令增加了新的含义?看这样一个程序:public class Test { public static void main(String[] args) { String name = "b"; int value = 0; switch(name) { case "a": value = 1; break; case "b": val 阅读全文