
java基础
文章平均质量分 89
Rune Mage
这个作者很懒,什么都没留下…
展开
-
三个线程轮流执行顺序打印ABC
方法1:使用boolean标记 package com.ziyear.exam; /** * 3个线程,顺序打印ABC10次 */ public class PrintThread_ABC_10_1 { /* 定义标记,初始1为true;2,3为false->可以打印A, 打印完设置2为true;1,3为false->可以打印B 打印完设置3为tr...原创 2019-02-20 15:36:46 · 1956 阅读 · 0 评论 -
深入学习 Java 序列化
前言 对于Java的序列化,一直只知道只需要实现Serializbale这个接口就可以了,具体内部实现一直不是很了解,正好这次在重复造RPC的轮子的时候涉及到序列化问题,就抽时间看了下 Java序列化的底层实现,这篇文章算是这次的学习小结吧。 第一部分:啥? Java序列化是指把Java对象保存为二进制字节码的过程,Java反序列化是指把二进制码重新转换成Java对象的过程。 那么为什么需要序列化...转载 2019-02-17 15:19:47 · 397 阅读 · 0 评论 -
JAVA字符串格式化-String.format()的使用
常规类型的格式化 String类的format()方法用于创建格式化的字符串以及连接多个字符串对象。熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处。format()方法有两种重载形式。 format(String format, Object... args) 新字符串使用本地语言环境,制定字符串格式和参数生成格式化的新字符串。 format(Locale local...原创 2019-02-16 15:31:36 · 152 阅读 · 0 评论 -
HashMap,HashTable,ConcurrentHashMap三者区别
HashTable 底层数组+链表实现,无论key还是value都不能为null,线程安全,实现线程安全的方式是在修改数据时锁住整个HashTable,效率低,ConcurrentHashMap做了相关优化 初始size为11,扩容:newsize = olesize*2+1 计算index的方法:index = (hash & 0x7FFFFFFF) % tab.length Has...原创 2019-02-16 15:33:57 · 1046 阅读 · 1 评论 -
HashMap的扩容机制以及默认大小为何是2次幂(转)
HashMap的Put方法 HashMap的数据结构设计可以参考链接。接下来回顾HashMap的put(Key k, Value v)过程: (1)对 Key求Hash值,计算出Hash表下标,对应hashCode()方法,所以使用class对象作为Key时需要重写该对象的hashCode()方法与equals()方法。 (2)如果没有碰撞,直接放入桶中,即Hash表数组对应位置的链表表头。 (3...转载 2019-01-26 15:01:26 · 1331 阅读 · 0 评论 -
Java中HashMap原理浅析
**在JDK1.6,JDK1.7中,HashMap采用位桶+链表实现,即使用链表处理冲突,**同一hash值的链表都存储在一个链表里。但是当位于一个桶中的元素较多,即hash值相等的元素较多时,通过key值依次查找的效率较低。而JDK1.8中,HashMap采用位桶+链表+红黑树实现,当链表长度超过阈值(8)时,将链表转换为红黑树,这样大大减少了查找时间。 简单说下HashMap的实现原理: 首先...原创 2019-01-26 14:49:49 · 2153 阅读 · 0 评论 -
面向网络编程
面向网络编程 网络编程概述 网络协议 通过计算机网络可以使多台计算机实现连接,位于同一个网络中的计算机在进行连接和通信时需要遵守一定的规则,这就好比在道路中行驶的汽车一定要遵守交通规则一样。在计算机网络中,这些连接和通信的规则被称为网络通信协议,它对数据的传输格式、传输速率、传输步骤等做了统一规定,通...原创 2018-11-15 17:41:05 · 489 阅读 · 0 评论 -
Java反射基础知识
反射 反射介绍 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法 对于任意一个对象,都能够调用它的任意一个方法 这种动态获取的以及动态调用对象的方法的功能称为java语言的反射机制. 简单来说, 就可以把.class文件比做动物的尸体, 而反射技术就是对尸体的一种解剖. 通过反射技术, 我们可以拿到该字节码文件中所有的东西...原创 2018-11-15 17:19:23 · 383 阅读 · 0 评论 -
IO流使用基础知识
IO流 IO流概述及分类 IO流用来处理设备之间的数据传输 Java对数据的操作是通过流的方式 Java用于操作流的类都在IO包中 流按流向分为两种:输入流,输出流 FileWriter类使用 FileWriter向文件中写数据 A:FileWriter向文件中写数据操作步骤: a:使用FileWriter流关联文件 b:利用FileWriter的写方法写数据 c:利用F...原创 2018-11-15 16:31:51 · 169 阅读 · 0 评论