文章分类 -  Java基础

保存Java基础、语法知识相关的博客
摘要:转自 : "Java8的Function接口学习(compose和andThen)" 何为Function接口? 在 以后的接口可以有接口方法的默认实现了,如下所示, 接口主要代码及个人整理注释: 由上知道了 类的具体代码,里面有四个方法,分别是 ,`compose andThen identity 阅读全文
posted @ 2019-12-03 11:15 lllunaticer 阅读(891) 评论(0) 推荐(0)
摘要:转自: "深入理解Java中的不可变对象" "Java Immutable Class – Builder Pattern" 不可变对象想必大部分朋友都不陌生,大家在平时写代码的过程中100%会使用到不可变对象,比如最常见的 对象、包装器对象等,那么到底为何 语言要这么设计,真正意图和考虑点是什么? 阅读全文
posted @ 2019-12-02 14:38 lllunaticer 阅读(286) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2019-11-15 17:09 lllunaticer 阅读(1) 评论(0) 推荐(0)
摘要:Executors 在Java 5之后,并发编程引入了一堆新的启动、调度和管理线程的API。Executor框架便是Java 5中引入的,其内部使用了线程池机制,它在java.util.cocurrent 包下,通过该框架来控制线程的启动、执行和关闭,可以简化并发编程的操作。因此,在Java 5之后 阅读全文
posted @ 2019-09-27 16:42 lllunaticer 阅读(150) 评论(0) 推荐(0)
摘要:转自https://blog.csdn.net/weixin_39788856/article/details/80388002 1、Java垃圾回收机制 GC,即就是Java垃圾回收机制。目前主流的JVM(HotSpot)采用的是分代收集算法。作为Java开发者,一般不需要专门编写内存回收和垃圾清 阅读全文
posted @ 2019-09-10 17:33 lllunaticer 阅读(1492) 评论(0) 推荐(1)
摘要:并发编程中,锁是经常需要用到的,今天我们一起来看下Java中的锁机制:synchronized和lock。 Synchronized 和 Lock的概念 Synchronized 是Java 并发编程中很重要的关键字,另外一个很重要的是 volatile。Syncronized 的目的是一次只允许一 阅读全文
posted @ 2019-09-03 10:16 lllunaticer 阅读(208) 评论(0) 推荐(0)
摘要:转自:https://blog.csdn.net/qq_30264689/article/details/81903031 1.clone方法 保护方法,实现对象的浅复制,只有实现了Cloneable接口才可以调用该方法,否则抛出CloneNotSupportedException异常。 主要是JA 阅读全文
posted @ 2019-09-03 01:27 lllunaticer 阅读(84) 评论(0) 推荐(0)
摘要:转自:https://www.cnblogs.com/rgever/p/9534857.html CMS:以获取最短回收停顿时间为目标的收集器,基于并发“标记清理”实现 过程: 1、初始标记:独占PUC,仅标记GCroots能直接关联的对象 2、并发标记:可以和用户线程并行执行,标记所有可达对象 3 阅读全文
posted @ 2019-09-03 01:21 lllunaticer 阅读(541) 评论(0) 推荐(0)
摘要:转自: https://www.cnblogs.com/biyeymyhjob/archive/2012/07/20/2601655.html COW技术由来 COW技术初窥 在Linux程序中,fork()会产生一个和父进程完全相同的子进程,但子进程在此后多会exec系统调用,出于效率考虑,lin 阅读全文
posted @ 2019-08-24 09:54 lllunaticer 阅读(360) 评论(0) 推荐(0)
摘要:转自: https://www.cnblogs.com/cuglkb/p/8572239.html CountDownLatch是一种java.util.concurrent包下一个同步工具类,它允许一个或多个线程等待直到在其他线程中一组操作执行完成。 CountDownLatch的用法非常简单,下 阅读全文
posted @ 2019-08-24 09:25 lllunaticer 阅读(479) 评论(0) 推荐(0)
摘要:作者:wuog链接:https://www.acwing.com/blog/content/490/#comment_802来源:AcWing 集合 1,Vector和ArrayList的区别? 1)Vector的方法都是同步的(Synchronized),是线程安全的(thread-safe),而 阅读全文
posted @ 2019-08-20 19:22 lllunaticer 阅读(447) 评论(0) 推荐(0)
摘要:ThreadLocal是什么? ThreadLocal是用来维护线程中的变量不被其他线程干扰而出现的一个结构,内部包含一个ThreadLocalMap类,该类为Thread类的一个局部变量,该Map存储的key为ThreadLocal对象自身,value为我们要存储的对象,这样一来,在不同线程中,持 阅读全文
posted @ 2019-06-03 21:19 lllunaticer 阅读(454) 评论(0) 推荐(0)
摘要:转自:http://www.cnblogs.com/gudi/p/6403953.html 1、强引用(StrongReference) 强引用是使用最普遍的引用。如果一个对象具有强引用,那垃圾回收器绝不会回收它。如下: Object o=new Object(); // 强引用 当内存空间不足,J 阅读全文
posted @ 2019-04-29 17:09 lllunaticer 阅读(122) 评论(0) 推荐(0)
摘要:原创文章,转载请务必将下面这段话置于文章开头处(保留超链接)。本文转发自技术世界,原文链接 www.jasongj.com/java/thread… ThreadLocal解决什么问题 由于 ThreadLocal 支持范型,如 ThreadLocal< StringBuilder >,为表述方便, 阅读全文
posted @ 2019-04-29 09:48 lllunaticer 阅读(176) 评论(0) 推荐(0)
摘要:转载自https://www.cnblogs.com/kaleidoscope/p/9506018.html 首先需要理解线程安全的两个方面:执行控制和内存可见。 执行控制的目的是控制代码执行(顺序)及是否可以并发执行。 内存可见控制的是线程执行结果在内存中对其它线程的可见性。根据Java内存模型的 阅读全文
posted @ 2019-04-26 19:19 lllunaticer 阅读(166) 评论(0) 推荐(0)
摘要:https://blog.csdn.net/TesuZer/article/details/80874195 文章目录 文章思路 synchronized作用 锁和synchronized的关系 synchronized有几种用法 锁有几种 对象锁和类锁的使用 文章思路 哪些概念难理解 类锁和对象锁 阅读全文
posted @ 2019-04-25 15:39 lllunaticer 阅读(1210) 评论(0) 推荐(0)
摘要:【转载】 首先,需要说明一点,也是最重要的一点,无论是同步方法 还是 同步块 都是只针对同一个对象的多线程而言的,只有同一个对象产生的多线程,才会考虑到 同步方法 或者是 同步块,如果定义多个实例的同步,可以考虑使用mutex,创建类似于c++整个服务全局锁,或者创建一个全局单例类,在其内定义全局锁 阅读全文
posted @ 2019-04-24 08:44 lllunaticer 阅读(125) 评论(0) 推荐(0)
摘要:转载 在上一篇文章中我们讲到了如何使用关键字synchronized来实现同步访问。本文我们继续来探讨这个问题,从Java 5之后,在java.util.concurrent.locks包下提供了另外一种方式来实现同步访问,那就是Lock。 也许有朋友会问,既然都可以通过synchronized来实 阅读全文
posted @ 2019-04-24 08:20 lllunaticer 阅读(114) 评论(0) 推荐(0)
摘要:作者:SnailClimb链接:https://www.zhihu.com/question/307849855/answer/623576509来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 文章内容稍长,但每一部分都没有多一句废话, 所有内容主要分为下面几部分 学 阅读全文
posted @ 2019-04-13 16:57 lllunaticer 阅读(208) 评论(0) 推荐(0)
摘要:Java遍历Map对象的四种方式 关于java中遍历map具体哪四种方式,请看下文详解吧。 方式一 这是最常见的并且在大多数情况下也是最可取的遍历方式。在键值都需要时使用。 1 2 3 4 Map<Integer, Integer> map = new HashMap<Integer, Intege 阅读全文
posted @ 2019-04-09 13:52 lllunaticer 阅读(90) 评论(0) 推荐(0)