每天三道面试题2019-09-20

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/HardToFindName/article/details/101081915

1、什么是java序列化,如何实现java序列化?

序列化是用来处理对象流的机制,所谓的对象流也就是价格对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。序列化是为了解决在对对象流进行读写操作时所引发的问题。
序列化实现:序列化的类需要实现Serializable接口,该接口没有需要实现的方法,implements该接口只是为了标记该对象是可被序列化的,然后使用一个输出流来构造一个对象流对象(ObjectOutputStream/ObjectInputStream),使用它们的方法进行对对象的操作。

2、List的三个子类的特点?

  1. ArrayList,底层结构是数组,底层查询快,增删慢
  2. LinkedList,底层结构是链表,增删快,查询慢
  3. Vector,底层结构是数组,但是方法都加了synchronize,所以其增删查较之其他两种都要慢。

3、List a=new ArrayList()和 ArrayList a =new ArrayList()的区别?

List a=new ArrayList();该语句创建了一个ArrayList对象,然后上溯到了List,此时a为上转向对象,因为子类可以定义父类没有的属性和方法,故此时a是不能够使用这些方法的,因为List中没有这些属性和方法,而ArrayList a =new ArrayList();这条语句创建了一个含有Array所有属性和方法的对象,所有如果想要使用ArrayList中独有的方法便不能够使用前者。

猜你喜欢

转载自blog.csdn.net/HardToFindName/article/details/101081915