java api
明天�
这个作者很懒,什么都没留下…
展开
-
线程
提到线程就一定要说并发, 因为线程是因为并发的存在而存在的.并发的目的是为了尽量提高CPU的利用率. 为了达到并发,需要为CPU划分时间片,为程序划分程序段,所以人们想到了进程. 可是进程的程序段划分的太大,进程在CPU上的切换属于重负荷切换, 大量的程序段/进程在频繁的切换CPU时候会占用CPU时间做压栈和弹栈的工作,和需要部分内存,存储进程有关栈中的信息。所以人们想到了将进程继续划分,划分为线...原创 2019-07-23 20:41:43 · 119 阅读 · 0 评论 -
序列化和反序列化
java.io.InvalidClassException: cn.tedu.day16.objectStream.Student; local class incompatible: stream classdesc serialVersionUID = 1, local class serialVersionUID = 2 at java.io.ObjectStreamClass.initN...原创 2019-07-19 19:10:57 · 261 阅读 · 0 评论 -
transient的作用
把类中的不需要序列化的属性前面加上transient修饰符.原创 2019-07-19 19:05:42 · 154 阅读 · 0 评论 -
ArrayList和Vector的区别
ArrayList 和Vector区别 ArrayList: 1.可以理解为可变数组 2.可以存储null 3.下标位置有序,内容无序 4.线程异步,不安全,速度快 Vector: 1.用法跟ArrayList一样 2.实现自List接口 3.可以存储null 4.下标有序,内容无序 5.线程同步,安全,速度慢 ...原创 2019-07-15 19:39:03 · 170 阅读 · 2 评论 -
java面试题--ArrayList如何动态扩容,以及扩容原则
ArrayList ArrayLis是如何实现动态扩容,以及扩容原则: 1)可以把ArrayList看做动态数组.: 申请一个更大的数组空间,利用新数组=Arrays.copyof(源数组,新数组长度);的方式进行扩容 2)扩容的原则: 可以查看源代码知道: jre 1.6及以下 old*3/2+1 jre1.7以以上 old+old>>1 所以我们可以看出来,ArrayList...原创 2019-07-13 21:03:38 · 814 阅读 · 0 评论