随笔分类 -  java基础

JDK 8 新特性
摘要:1. 了解Open JDK 和 Oracle JDK 2. JDK 8新特性 Lambda 表达式 集合之 Stream流式操作 接口的增强 并行数组排序 Optional 中避免Null检查 新的时间和日期 API 可重复注解 1.Lambda 表达式介绍 1.1使用匿名内部类存在的问题 当需要启 阅读全文
posted @ 2020-02-12 21:07 印记XP 阅读(222) 评论(0) 推荐(0) 编辑
覆盖equals()要覆盖HashCode()
摘要:在每个覆盖了 equals 方法的类中,都必须覆盖 hashCode 方法。如果不这样做的话,就会违反 hashCode 的通用约定,从而导致该类无法结合所有的给予散列的集合一起正常运作。这类集合包括 HashSet、HashMap,下面是Object 的通用规范: 在应用程序的执行期间,只要对象的 阅读全文
posted @ 2019-10-17 22:19 印记XP 阅读(114) 评论(0) 推荐(0) 编辑
HashSet和TreeSet的实现与原理
摘要:HashSet和TreeSet有什么区别呢? 他们的区别主要在他们底层的数据结构不同。HashSet使用的HashMap来实现的,而TreeSet使用的TreeMap来实现的。 HashMap和TreeMap的区别呢? HashMap是一个最常用的数据结构,它主要用于我们又通过固定值(key)获取内 阅读全文
posted @ 2019-10-17 22:06 印记XP 阅读(772) 评论(0) 推荐(1) 编辑
Java基于网络编程
摘要:HttpURLConnection 是基于HTTP协议的,其底层通过socket通信实现。如果不设置超时(timeout),在网络异常的情况下,可能会导致程序僵死而不继续往下执行。可以通过以下两个语句来设置相应的超时:System.setProperty("sun.net.client.defaul 阅读全文
posted @ 2019-09-05 14:49 印记XP 阅读(185) 评论(0) 推荐(0) 编辑
为什么重写了equals方法一般也要重写hashCode方法
摘要:现在假设我们有一个矩形类Rectangle public class Rectangle { private int length; private int width; public Rectangle(int length, int width) { this.length = length; 阅读全文
posted @ 2019-08-03 10:34 印记XP 阅读(117) 评论(0) 推荐(0) 编辑
HashMap 底层解析
摘要:HashMap是线程不安全的 HashMap中存储的内容: key ,value HashMap中存储结构:数组+链表+红黑树(jdk8) HashMap中存储位置:数组下标 HashMap中存储大小:数组长度 数组的定义 Integer [] integer=new Integer[10]; 对于 阅读全文
posted @ 2019-08-01 20:03 印记XP 阅读(127) 评论(0) 推荐(0) 编辑
多线程
摘要:利用多线程的目的是为了提高cpu的利用率。 多线程:指的是这个程序(一个进程)运行时产生了不止一个线程 并行:多个cpu实例,或者多台机器同时执行一段处理逻辑,是真正的同时 并发:通过cpu调度算法,让用户看上去同时执行,实际上从cpu操作层面上不是真正的同时 线程安全:java中同步指的是通过人为 阅读全文
posted @ 2019-08-01 16:00 印记XP 阅读(107) 评论(0) 推荐(0) 编辑
java线程内存模型JMM
摘要:java线程内存模型的8种操作: read(读取):从主存中读取数据 load(加载):将从主存中读取的数据加载到内存工作 use(使用):使用工作内存中的数 assign(赋值):如果某个线程对共享变量做出了改变,将数据从新写入工作区 store():将改变后的工作区的数据重新写回主内存中 wri 阅读全文
posted @ 2019-07-21 20:49 印记XP 阅读(179) 评论(0) 推荐(0) 编辑
jvm
摘要:jvm 结构: 类加载子系统:从文件或者网络中加载class信息(classLoad) 方法区:将加载的信息存放在方法区中,常量池,类变量 java堆:虚拟机启动时创建,由jvm控制大小 【Eden,From , To】(young)【old】 【permanent】 直接内存:运行NIO库下的东西 阅读全文
posted @ 2019-07-18 11:28 印记XP 阅读(172) 评论(0) 推荐(0) 编辑
快速失败fail—fast)和安全失败(fail—safe)
摘要:快速失败: 在上节list集合中就包含快速失败, 在用迭代器遍历一个集合对象时,如果遍历过程中对集合对象的结构进行了修改(增加、删除), 则会抛出Concurrent Modification Exception。 java.util包下的集合类都是快速失败的,不能在多线程下发生并发修改(迭代过程中 阅读全文
posted @ 2019-06-23 20:52 印记XP 阅读(225) 评论(0) 推荐(0) 编辑
集合---list
摘要:Iterable 是所有集合的超类, collection继承了iterable ,而list和set又继承了 collection,而在Iterable中定义了一个iterator()方法返回一个迭代器Iterator 而 Iterator是一个超类接口,为各种容器提供了公共的操作接口,里边有 h 阅读全文
posted @ 2019-06-23 20:18 印记XP 阅读(159) 评论(0) 推荐(0) 编辑
jdk和jre
摘要:链接:https://www.nowcoder.com/questionTerminal/36bd480a52d542298a8ca2056021f774来源:牛客网JDK顾名思义是java开发工具包,是程序员使用java语言编写java程序所需的开发工具包,是提供给程序员使用的。 JDK包含了JR 阅读全文
posted @ 2019-06-23 13:40 印记XP 阅读(121) 评论(0) 推荐(0) 编辑
什么是java虚拟机,为什么java被称作是“平台无关的编程语言”
摘要:java虚拟机是一个可以执行java字节码的虚拟机进程,java源文件被编译成能被java虚拟机执行的字节码文件。 java源程序经过javac被编译成二进制的.class的字节码文件,java的跨平台就是指.class字节码文件的跨平台,.class字节码文件是与平台无关的, .class字节码文 阅读全文
posted @ 2019-06-23 11:03 印记XP 阅读(441) 评论(0) 推荐(0) 编辑
Servlet和CGI的区别
摘要:与传统的CGI和许多其他类似CGI的技术相比,Java Servlet具有更高的效率,更容易使用,功能更强大,具有更好的可移植性,更节省投资。 Servlet处于服务器进程中,它通过多线程方式运行其service()方法,一个实例可以服务于多个请求,并且其实例一般不会销毁,CGI对每个请求都产生新的 阅读全文
posted @ 2019-06-16 21:12 印记XP 阅读(177) 评论(0) 推荐(0) 编辑
Servlet 3中的异步处理
摘要:有人可能会质疑,既然都有多线程了,还需要异步处理请求吗?答案是肯定的,因为如果一个任务处理时间相当长,那么Servlet或Filter会一直占用着请求处理线程直到任务结束,随着并发用户的增加,容器将会遭遇线程超出的风险,这这种情况下很多的请求将会被堆积起来而后续的请求可能会遭遇拒绝服务,直到有资源可 阅读全文
posted @ 2019-06-16 20:42 印记XP 阅读(160) 评论(0) 推荐(0) 编辑
java中cas的使用
摘要:CAS是compare and swap的缩写,即我们所说的比较交换。cas是一种基于锁的操作,而且是乐观锁。 在java中锁分为乐观锁和悲观锁 synchronized就是一种悲观锁(独占锁),会导致其它所有需要锁的线程挂起,等待持有锁的线程释放锁。 而乐观锁采取了一种宽泛的态度,通过某种方式不加 阅读全文
posted @ 2019-06-15 20:40 印记XP 阅读(2243) 评论(0) 推荐(0) 编辑
sleep和wait的区别
摘要:public class SleepAndWait { public static void main(String[] args) { new Thread(new Thread1()).start(); try { //sleep不会释放锁对象,但是导致了程序暂停执行指定的时间,让出cpu给其他 阅读全文
posted @ 2019-06-14 20:04 印记XP 阅读(198) 评论(0) 推荐(0) 编辑
常用正则表达式
摘要:常用的正则表达式 常用正则表达式 正则表达式用于字符串处理、表单验证等场合,实用高效。现将一些常用的表达式收集于此,以备不时之需。 用户名:/^[a-z0-9_-]{3,16}$/ 密码:/^[a-z0-9_-]{6,18}$/ 十六进制值:/^#?([a-f0-9]{6}|[a-f0-9]{3}) 阅读全文
posted @ 2019-01-24 10:56 印记XP 阅读(132) 评论(0) 推荐(0) 编辑


点击右上角即可分享
微信分享提示