Java里的动态数组—ArrayList

ArrayList是实现List接口的动态数组,每个ArrayList实例都有一个容量,该容量是指用来存储列表元素的数组的大小。随着向ArrayList中不断添加元素,容量会自动增长,自动增长会带来数据向新数组的重新拷贝。同时需要注意的是这个实现不是同步的。如果多个线程同时访问一个ArrayList实例,而其中至少一个线程从结构上修改了列表,那么它必须保持外部同步。(结构上的修改是指任何添加或删除一个或多个元素的的操作,或者显示调整底层数组的大小;仅仅设置元素的值不是结构上的修改)

基本认识

 最近一次接触ip是在我读《TCP/IP详解》时读到了,其实我感觉这些基础对理解整个互联网的结构都有一些很好的认识,在TCP/IP的协议簇中,首先简单的说一下在TCP中分层:

  • 数据链路层:一般都是物理设备驱动程序和接口
  • 网络层:处理分组在网络中的活动,如分组选路。TCP/IP中,IP协议,ICMP协议,IGMP协议
  • 运输层:主要为应用程序提供端到端的通信,主要包括两种协议:TCP(高可靠的)、UDP(不可靠的,效率高的)
  • 应用层:负责处理特定的应用程序的细节

    上图是我认为对TCP/IP分层的理解很好的一张图TCP/IP分层和传统的OSI分层不一样。OSI的7层是分的更加详细。对于TCP/IP的协议簇重点关注的还是网络层,运输层。
ip

开始写了有点小激动

  第一篇博客,其实以前也写过一些博文,但是都是不成体系的,一直都想写,但是总被一些事情给牵住了,终于可以开始第一篇博文的书写。这个博客主要记录我从大四实习开始的路程,不知道以后这个博客可以坚持多长时间,但是希望越久越好。我现在主要方向还是Java和golang的后端开发。因为两个的基础都不是很好。积累基础是一个很缓慢的过程,所以只能慢慢的往上爬。不能急。我会在博客中更新我最近学习的东西,和在工作中的坑。希望自己的技术能越来越来。说不定,以后就给自己的博客一个独立的域名,只是现在,刚开始。不急。