Java基础、容器
文章平均质量分 87
Java基础、容器集合相关
xingze_W
Stay hungry, Stay young!!!
展开
-
ArrayList、Vector、LinkedList、CopyOnWriteArrayList解析
ArrayListLinkedListArrayList和LinkedList的区别VectorCopyOnWriteArrayList原创 2019-09-13 08:57:53 · 200 阅读 · 0 评论 -
HashMap详解、ConcurrentHashMap、Hashtable、SynchronizedMap
HashMap简介1.1 HashMap的底层数据结构1.2 为什么链表改为红黑树的阈值是 8?1.3 解决hash冲突的办法有哪些?HashMap用的哪种?1.4 为什么在解决 hash 冲突的时候,不直接用红黑树?而选择先用链表,再转红黑树?1.5 HashMap默认加载因子是多少?为什么是 0.75,不是 0.6 或者 0.8 ?1.6 HashMap 中 key 的存储索引是怎么计算的?1.7 为什么 hash 值要与length-1相与?1.8 HashMap数组的长度为什么是原创 2019-10-26 09:35:48 · 419 阅读 · 1 评论 -
HashSet(基于HashMap实现)、TreeSet
HashSetTreeSet原创 2019-10-22 09:22:13 · 153 阅读 · 1 评论 -
自动装箱与拆箱、equals()和hashCode()、Comparable与Comparator接口、重载与重写
自动装箱与自动拆箱equals()与hashCode()Comparable与Comparator接口重载(overload)、重写(overwrite)String、StringBuffer、StringBuilder抽象类、抽象方法、接口原创 2019-10-05 21:07:52 · 140 阅读 · 0 评论 -
final修饰类、方法、变量
final关键字可以修饰类、方法、变量,当final修饰类、方法、变量时,分别表示:类不可被继承;方法不能被重写;变量值不能被更改。final类final修饰的类不能被继承,即不能有子类。当子类继承父类时,将可以直接访问到父类内部数据,这可能会导致一些安全问题。为了保证一个类不可被继承,可以使用final来修饰类。final方法final修饰的方法不可被重写,如果不希望子类重写父类的某个方...原创 2019-09-02 10:23:58 · 1344 阅读 · 0 评论 -
Java的异常处理、自定义异常、try-with-resources
Java的异常处理机制Java通过面向对象的方式对异常进行处理,Java把异常按照不同的类型进行分类,并提供了良好的接口。在Java中,每个异常都是一个Throwable对象。Throwable类是所有异常类的父类。Java的异常处理关键字Java的异常处理主要依赖于:try、catch、finally、throw、throws五个关键字,关键字作用如下try关键字后紧跟一个花括号括起来...原创 2019-10-03 15:48:00 · 539 阅读 · 0 评论 -
Java多态
Java引用变量有两个类型:编译时类型和运行时类型。编译时类型由声明该变量时使用的类型决定,运行时类型由实际赋给该变量的对象决定。如果编译时类型和运行时类型不一致,就可能出现多态。(Polymorphism)。多态性...原创 2019-08-26 21:51:07 · 107 阅读 · 0 评论 -
Java反射机制、反射相关API、反射API使用(反射获取实体类字段名和注解值)
Java的反射机制在编译时并不确定是哪个类被加载了,而是在程序运行时才加载、探知、使用,这样的特点就是反射。每个类被加载后,系统就会为该类生成一个对应的Class对象,通过该Class对象就可以访问JVM中的这个类。在获得了某个类所对应的Class对象之后,程序就可以调用Class对象的方法来获取该类的详细信息。指定的public属性,与访问级别无关(可访问paivate属性)指定的构造方法,与访问级别无关(可访问paivate构造方法)指定的方法,与访问级别无关(可访问paivate方法)原创 2019-07-30 19:50:12 · 1132 阅读 · 0 评论 -
泛型、泛型擦除、泛型通配符
1、泛型定义 将对象的类型作为参数,指定到其他类或方法上,从而保证类型转换的安全性和稳定性,这就是泛型。泛型的本质是参数化类型,也就是把所操作的数据类型指定一个参数,使代码可以用于多种类型。 泛型是JDK1.5的新特性,Java语言...原创 2019-07-30 19:06:01 · 684 阅读 · 0 评论 -
集合遍历(三种)与删除(两种)、List去重(set去重、for循环remove去重)
1. 集合遍历1.1 普通for循环遍历1.2 foreach循环(增强for循环)遍历1.3 Iterator迭代器遍历2. 集合删除2.1 使用普通for循环删除2.2 Iterator遍历时调用Iterator的remove()方法,而不是list的remove()方法进行删除2.3 为什么不能用foreach遍历删除List中的元素呢?3. List去重原创 2019-11-25 21:09:21 · 946 阅读 · 0 评论 -
foreach循环陷阱、快速失败与安全失败
在使用Iterator迭代器遍历并修改集合对象时,有时会抛出异常,例如HashMap、ArrayList等。有时不会抛出异常,例如ConcurrentHashMap等。其中就涉及到了快速失败(fail-fast)和安全失败(fail-safe)。快速失败(fail-fast)在使用迭代器对集合对象进行遍历时,如果A线程正在对集合进行遍历,此时B线程对集合进行修改(增加、删除、修改)操作,或者A...原创 2019-10-08 08:51:09 · 270 阅读 · 0 评论 -
File类
File类 File类是java.io包下与文件操作相关的类,与平台无关,不管是文件还是目录都是使用File类来操作的,File类能新建、删除、重命名文件或目录,但是不能访问文件内容,如果需要访问文件内容,则需要使用输出流/输入流。使用File类访问文件或目录 &n...原创 2019-09-16 09:42:46 · 102 阅读 · 0 评论 -
流、Java IO流、OkHttp3
流流的理解流怎么处理大数据量?流每次处理的数据量大小Java IO流Java IO流的分类输入流与输出流字节流和字符流OkHttp3使用OkHttp3发送GET请求使用OkHttp3发送POST请求使用OkHttp3需要注意的点原创 2019-08-04 17:11:06 · 101 阅读 · 1 评论 -
BIO
www原创 2019-08-04 17:08:36 · 207 阅读 · 0 评论 -
NIO
面向缓冲区、非阻塞、原创 2019-11-01 09:30:40 · 124 阅读 · 0 评论 -
Java Socket编程
文章目录SocketSocket实现通信流程java.net包基于TCP协议的Socket编程Socket类ServerSocket类基于UDP协议的Socket编程DatagramPacket类DatagramSocket类Socket 在计算机网络编程技术中,两个进程或者两台计算机之间可以通过一个...原创 2019-11-11 16:08:23 · 734 阅读 · 0 评论 -
TCP粘包、拆包问题
TCP粘包、拆包的原因和解决办法原创 2019-11-07 21:17:29 · 212 阅读 · 0 评论 -
深拷贝和浅拷贝
深拷贝和浅拷贝原创 2019-11-20 09:48:29 · 197 阅读 · 0 评论