首页
首页
BOT
沸点
课程
直播
活动
AI刷题
NEW
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
java
订阅
木山峰
更多收藏集
微信扫码分享
微信
新浪微博
QQ
11篇文章 · 0订阅
开源许可证GPL、BSD、MIT、Mozilla、Apache和LGPL的区别
BSD开源协议是一个给于使用者很大自由的协议。基本上使用者可以”为所欲为”,可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。 BSD 代码鼓励代码共享,但需要尊重代码作者的著作权。BSD由于允许使用者修改和重新发布代码,也允许使用或在BSD代码上开发…
[译] Java 数据流的不同应用场景
数据流是一种数据分发技术,数据生产者将数据记录写入有序数据流,数据消费者可以从该数据流中以相同的顺序读取数据。这是一张用于说明数据生产者,数据流和数据消费者的简单数据流图: 从“表面”上看,数据流是一种很简单的概念。数据生产者将记录存储到数据流中,随后消费者可以从中读取。不过,…
【译】你不知道的 Chrome 调试工具技巧 第二十四天:最后一天,元旦牛逼
本文是作者 Tomek Sułkowski 发布在 medium 上的一个系列。据作者透露一共有 24 篇,一直更新到 12 月 24 日 版权归原作者所有。 译者在翻译前已经和作者沟通得到了翻译整个系列的授权。 在马上就要迎来假期的这 24 天里,我将会发布一系列短篇的文章,…
超全的设计模式简介(45种)
共有 23 种设计模式。这些模式可以分为三大类: 创建型模式(Creational Patterns)- 这些设计模式提供了一种在创建对象的同时隐藏创建逻辑的方式,而不是使用 new 运算符直接实例化对象。这使得程序在判断针对某个给定实例需要创建哪些对象时更加灵活。 结构型模式…
干货 | Java8 新特性教程
也希望学完本系列教程的小伙伴能够熟练掌握和应用 Java8 的各种特性,使其成为在工作中的一门利器。废话不多说,让我们一起开启 Java8 新特性之旅吧! Java 8 允许我们通过 default 关键字对接口中定义的抽象方法提供一个默认的实现。 在上面这个接口中,我们除了定…
Java并发编程73道面试题及答案——稳了
1、在java中守护线程和本地线程区别? java中的线程分为两种:守护线程(Daemon)和用户线程(User)。 任何线程都可以设置为守护线程和用户线程,通过方法Thread.setDaemon(bool on)…
Java并发编程实战
一. 线程安全性 每个锁都关联一个请求计数器和一个占有他的线程,当请求计数器为0时,这个锁可以被认为是unhled的,当一个线程请求一个unheld的锁时,JVM记录锁的拥有者,并把锁的请求计数加1,如果同一个线程再次请求这个锁时,请求计数器就会增加,当该线程退出syncron…
跨域
本文主要涉及三种跨域方法:JSONP、CORS、postMessage。 通常,最常用的跨域方式有以下三种:JSONP、CORS、postMessage。 单纯地为了实现跨域请求而创造的一个 trick。 虽然因为同源策略的影响,不能通过XMLHttpRequest请求不同域上…
死磕java concurrent包系列(二)基于ReentrantLock理解AQS同步队列的细节和设计模式
之前介绍过并发问题的解决方式就是一般通过锁,concurrent包中最重要的接口就是lock接口,它可以显示的获取或者释放锁,对于lock接口来说最常见的实现就是ReetrantLock(可重入锁),而ReetrantLock的实现又离不开AQS。 https://juejin…
彻底理解synchronized
通过字节码分析以及源码解析深入理解synchronized的使用场景以及背后的实现原理,避免在生产环境出现并发问题,