
Java
文章平均质量分 92
Java
mojiezhao
个人学习笔记以及知识点整理
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Java垃圾回收
之前上学的时候有这个一个梗,说在食堂里吃饭,吃完把餐盘端走清理的,是 C++ 程序员,吃完直接就走的,是 Java 程序员。 确实,在 Java 的世界里,似乎我们不用对垃圾回收那么的专注,很多初学者不懂 GC,也依然能写出一个能用甚至还不错的程序或系统。但其实这并不代表 Java 的 GC 就不重要。相反,它是那么的重要和复杂,以至于出了问题,那些初学者除了打开 GC 日志,看着一堆0101的天...原创 2020-03-15 20:55:25 · 210 阅读 · 0 评论 -
Java中equals()和HashCode()的关系
一.基础:hashCode() 和 equals() 简介 在学习 hashCode() 和 equals() 之间的关系之前, 我们有必要先单独地了解他俩的特点. equals() equals() 方法用于比较两个对象是否相等,它与 == 相等比较符有着本质的不同。 在万物皆对象的 Java 体系中,系统把判断对象是否相等的权力交给程序员。具体的措施是把 equals() 方法写到 Obje...原创 2020-03-15 20:42:15 · 317 阅读 · 0 评论 -
List、Map、Set三个接口,存取元素时,各有什么特点?
首先,List与Set具有相似性,它们都是单列元素的集合,所以,它们有一个功共同的父接口,叫Collection。Set里面不允许有重复的元素,所谓重复,即不能有两个相等(注意,不是仅仅是相同)的对象 ,即假设Set集合中有了一个A对象,现在我要向Set集合再存入一个B对象,但B对象与A对象equals相等,则B对象存储不进去,所以,Set集合的add方法有一个boolean的返回值,当集合中没有...原创 2020-03-06 21:48:30 · 373 阅读 · 0 评论 -
sleep() 和 wait() 有什么区别?
(网上的答案:sleep是线程类(Thread)的方法,导致此线程暂停执行指定时间,给执行机会给其他线程,但是监控状态依然保持,到时后会自动恢复。调用sleep不会释放对象锁。 wait是Object类的方法,对此对象调用wait方法导致本线程放弃对象锁,进入等待此对象的等待锁定池,只有针对此对象发出notify方法(或notifyAll)后本线程才进入对象锁定池准备获得对象锁进入运行状态。) s...原创 2020-03-06 21:00:32 · 234 阅读 · 0 评论 -
使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变?
使用final关键字修饰一个变量时,是指引用变量不能变,引用变量所指向的对象中的内容还是可以改变的。例如,对于如下语句: final StringBuffer a=new StringBuffer(“immutable”); 执行如下语句将报告编译期错误: a=new StringBuffer(""); 但是,执行如下语句则可以通过编译: a.append(" broken!"); 有人在定义方法...原创 2020-03-05 21:22:32 · 300 阅读 · 0 评论 -
Java之正则表达式
正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个"规则字符串",这个"规则字符串"用来表达对字符串的一种过滤逻辑。 给定一个正则表达式和另一个字符串,我们可以达到如下的目的: 1. 给定的字符串是否符合正则表达式的过滤逻辑(称作"匹配"); 2. 可以通过正则表达式,从字符串中获取我们想要的特定部分。 正则表达式的特点是: 1. 灵活性、逻辑...原创 2020-02-09 20:11:03 · 193 阅读 · 0 评论 -
Java基础之反射(二)
Java反射机制是一个非常强大的功能,在很多大型项目比如Spring, Mybatis都可以看见反射的身影。通过反射机制我们可以在运行期间获取对象的类型信息,利用这一特性我们可以实现工厂模式和代理模式等设计模式,同时也可以解决Java泛型擦除等令人苦恼的问题。本文我们就从实际应用的角度出发,来应用一下Java的反射机制。 Java反射机制主要提供了以下功能:在运行时构造一个类的对象;判断一个类所具...原创 2020-02-09 19:34:33 · 285 阅读 · 0 评论 -
Java基础之泛型
十八 泛型 泛型(Generic)的作用,在JDK5以前,对象保存到集合中就会失去其特性(任何类型传入,都会变成Object),取出时通常要程序员手工进行类型的强制转换,这样不可避免就会引起程序的一些安全性问题,例如: ArrayList list =new ArrayList(); list.add("abc"); Integer num=(Integer)list.get[0];//运行时会...原创 2020-02-09 19:29:19 · 189 阅读 · 0 评论 -
Java基础之注解
今天要讲的是注解,对于本章节,最好是有Servlet基础的人查阅~因为单纯是Java基础的话,可能用不上注解这个东西。但如果开发过Servlet,就对@WebServlet不会陌生。 现在的开发都推崇使用注解来进行开发,这样就可以免去写XML配置了,十分方便的一项技术~ 学习注解可以更好地理解注解是怎么工作的,看见注解了就可以想到它的运行原理了~。 如果有错的地方请大家多多包涵并欢迎在评论区指正~...原创 2020-02-09 19:28:55 · 148 阅读 · 0 评论 -
Java容器之Collection
一、集合(Collection)介绍 1.1为什么需要Collection Java是一门面向对象的语言,就免不了处理对象 为了方便操作多个对象,那么我们就得把这多个对象存储起来 想要存储多个对象(变量),很容易就能想到一个容器 常用的容器我们知道有-->StringBuffered,数组(虽然有对象数组,但是数组的长度是不可变的!) 所以,Java就为我们提供了集合(Collect...原创 2020-02-09 18:35:25 · 210 阅读 · 0 评论 -
Java容器之List集合
现在这篇主要讲List集合的三个子类: ArrayList 底层数据结构是数组。线程不安全 LinkedList 底层数据结构是链表。线程不安全 Vector 底层数据结构是数组。线程安全 这篇主要来看看它们比较重要的方法是如何实现的,需要注意些什么,最后比较一下哪个时候用哪个~ 看这篇文章之前最好是有点数据结构的基础:Java实现单向链表,栈和队列,二叉树。 当然了,如果讲得有...原创 2020-02-09 18:33:35 · 253 阅读 · 0 评论 -
Java集合之Map
原本我是打算继续将Collection下的Set集合的,结果看了源码发现:Set集合实际上就是HashMap来构建的! 所以,就先介绍Map集合、散列表和红黑树吧! 看这篇文章之前最好是有点数据结构的基础: Java实现单向链表 栈和队列 二叉树 当然了,如果讲得有错的地方还请大家多多包涵并不吝在评论去指正~ 一、Map介绍 1.1为什么需要Map 前面我们学习的Collection叫做...原创 2020-02-09 18:29:57 · 197 阅读 · 0 评论 -
Java集合之Set
现在这篇主要讲Set集合的三个子类: HashSet集合 A:底层数据结构是哈希表(是一个元素为链表的数组) + 红黑树 TreeSet集合 A:底层数据结构是红黑树(是一个自平衡的二叉树) B:保证元素的排序方式 LinkedHashSet集合 A::底层数据结构由哈希表(是一个元素为链表的数组)和双向链表组成。 这篇主要来看看它们比较重要的方法是如何实现的,...原创 2020-02-09 18:28:15 · 257 阅读 · 0 评论 -
Java集合总结
Java容器可分为两大类: Collection List ArrayList LinkedList Vector(了解,已过时) Set TreeSet HashSet LinkedHashSet Map HashMap LinkedHashMap TreeMap ConcurrentHashMap Hashtable(了解...原创 2020-02-09 18:26:35 · 153 阅读 · 0 评论