![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java基础
带带程序
这个作者很懒,什么都没留下…
展开
-
多线程高并发总结(一)
日常开发中,我们面对的大多是多线程高并发的场景,多线程的知识点也变得尤为重要。所以这一节我们对多线程的基本知识点做一个全面复习。一、什么是线程,进程和线程的区别?进程是资源分配的基本单位,是正在运行的一个程序,一个进程包括很多线程;线程是cup执行和调度的基本单位,是程序中的一条执行路径;二、线程如何创建?线程池有哪些?其中的参数有哪些?拒绝策略有哪些?线程池中任务的执行过程?线程的创建方式有四种;1、继承Thread2、实现Runnable接口3、实现Callable接口4、创建线程池原创 2020-08-23 22:54:25 · 231 阅读 · 0 评论 -
关于对Java集合类的一些总结(三)
Map接口下的实现类主要有HashMap、HashTable、ConcurrentHashMap、TreeMap一、HashMap底层数据结构是数组+链表/红黑树,HashMap的主干是Node数组(JDK1.8之前是Entry),数组是HashMap的主体,链表是为了解决哈希冲突的。transient Node<K,V>[] table;Node是HashMap的一个静态内部类,Node节点中包括key的hash值、key和value值,链表中指向下一个Node节点的指针。sta原创 2020-08-19 18:58:35 · 109 阅读 · 0 评论 -
关于对Java集合类的一些总结(二)
上一节对List接口下的ArrayList和LinkedList实现类的底层数据结构、扩容机制、线程安全简要做了一个分析,这一节我们来看一下Set接口下的实现类一、Set接口下主要有两个实现类,分别是HashSet和TreeSet1、HashSet的底层是HashMapprivate transient HashMap<E,Object> map; // Dummy value to associate with an Object in the backing Map原创 2020-08-18 22:48:42 · 112 阅读 · 0 评论 -
关于对Java集合类的一些总结(一)
Java集合类主要分为Collection和Map两大接口,下面将对每个实现类做简要概述一、List接口下有两个实现类,分别是ArrayList和LinkList1、ArrayList底层的数据结构是Object[ ]数组transient Object[] elementData; 当创建一个没有指定初始大小的ArrayList时,默认会创建一个长度为0的数组private static final Object[] EMPTY_ELEMENTDATA = {};...public Ar原创 2020-08-18 16:53:13 · 87 阅读 · 0 评论 -
Java中String类为什么是final类型?
String是我们平时开发中最常用的类之一,它的底层是char[ ]数组(JDK 1.9 之后是Byte[ ]数组),可是你知道它为什么是final类型的吗?private final char value[];1、安全 在多线程的场景下,多个线程对String进行读操作时,不会发生线程安全问题,而String是final类型的,具有不可变性,所以不能对String进行写操作,此时线程也是安全的。String s = new String原创 2020-07-17 16:22:33 · 2367 阅读 · 0 评论