![](https://img-blog.csdnimg.cn/20190919195541271.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java技术
文章平均质量分 68
morningcat2018
情深不寿,慧极必伤
展开
-
Java编程问题总结
Java编程问题总结整理自 https://github.com/giantray/stackoverflow-java-top-qa原创 2023-03-11 10:12:35 · 453 阅读 · 0 评论 -
Java8 Documentation
Java8 Documentation : Java Platform, Standard Edition (Java SE) 8About Java SE 8What’s New (Features and Enhancements)Commercial Features 商业特色Compatibility Guide 兼容性指南Known Issues 已知问题Downl...原创 2019-12-19 15:58:54 · 569 阅读 · 0 评论 -
morningcat2018 LearningDocs
LearningDocs学习资料与文档J2EE patterns http://www.corej2eepatterns.com/JSR Java 规范提案 https://jcp.org/en/jsr/allJSR-j2se https://www.jcp.org/en/jsr/platform?listBy=2&listByType=platformJSR-j2ee http...原创 2019-02-13 17:02:15 · 236 阅读 · 0 评论 -
关于jdk和java规范
Oracle Jdk 下载地址https://www.oracle.com/technetwork/java/javase/archive-139210.htmlmac环境下安装oracle jdk后的安装地址如下:/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/Library/Java/JavaVirtualMachin...原创 2019-03-30 01:54:46 · 464 阅读 · 0 评论 -
jdk版本依赖的JSR标准
jdk版本依赖的JSR标准Java SE 7 (JSR 336)Java SE 8 (JSR 337)Java SE 9 (JSR 379)Java SE 10 (JSR 383)Java SE 11 (JSR 384)数据来源于:http://jdk.java.net/java-se-ri/11原创 2019-02-16 02:51:39 · 568 阅读 · 0 评论 -
Java8 之 Lambda表达式
Java8 之 Lambda表达式Java8 中的 Lambda表达式 需要“函数式”接口的支持;1.函数式接口函数式接口 :只有一个抽象方法的接口;1.1 常用的函数式接口消费型接口:Consumer void accept(T t);供给型接口:Supplier T get();函数型接口:Function<T, R> R...原创 2019-02-26 23:29:52 · 109 阅读 · 0 评论 -
Java8 之 Stream API
Java8 - Stream API1.介绍Stream创建 -&amp;amp;amp;amp;gt; 中间操作 -&amp;amp;amp;amp;gt; 终止操作流一旦使用终止操作,就不能再进行中间操作Java8 特性与 函数式接口 配合使用参考Java8 - Lambda表达式与 Optional 配合使用惰性求值多个中间操作可以连接起来形成一个流水线,除非流水 线上触发终止操作,否则中间操作不会执行任何的处理!...原创 2019-02-13 17:04:37 · 231 阅读 · 0 评论 -
java 7-13 JEP and JSR
JDK 13https://openjdk.java.net/projects/jdk/13/JDK 12https://openjdk.java.net/projects/jdk/12/JDK 11https://openjdk.java.net/projects/jdk/11/JDK 10https://openjdk.java.net/projects/jdk/10/...原创 2019-10-18 18:45:30 · 382 阅读 · 0 评论 -
Java8 之 SCFP 和 Stream 梳理
关于 Java8 中的 SCFP 和 Stream 梳理SCFPSupplier 提供者Supplier 扩展Supplier 实践Consumer 消费者Consumer 拓展Consumer 实践Predicate 判断者Predicate 拓展Predicate 实践Function 转换者Function 实践Function 拓展XxxOperatorStream API基础创建Stre...原创 2019-11-12 16:18:27 · 331 阅读 · 0 评论 -
Java8 之 新的时间日期 API
import java.time.Instant;import java.time.LocalDate;import java.time.LocalDateTime;import java.time.ZoneId;import java.util.Date;public class DateUtils {public static Date asDate(LocalDate local...原创 2019-11-27 19:39:37 · 263 阅读 · 0 评论 -
java9 模块化基础
java9 模块化必要性可定制的 JRE :更小的运行时镜像更确定的模块依赖关系:避免 JAR HELL 问题与 OSGI 的比较定义模块是一个命名的、自我描述的代码和数据的集合模块的代码被组织成多个包,每个白中包含Java类和接口模块的数据则包括资源文件和其他静态信息模块声明文件模块声明文件:module-info.java关键词:module模块依赖和包导出...原创 2019-10-18 11:06:20 · 185 阅读 · 0 评论 -
jdk8中的一些新特性梳理
jdk8中的一些新特性梳理LambdaStream API接口中的默认方法接口中的静态方法重复注解类型注解时间日期Lambdahttps://blog.csdn.net/u013837825/article/details/87956602Stream APIhttps://blog.csdn.net/u013837825/article/details/87191393接口中的默认方法...原创 2019-09-19 18:25:42 · 491 阅读 · 0 评论 -
JDK8 几个常见内置命令工具
https://docs.oracle.com/javase/8/docs/technotes/tools/index.html#basicjavapjavap [options] classfile…javap命令反汇编一个或多个类文件。输出取决于所使用的选项。如果不使用任何选项,则javap命令将打印程序包,受保护的字段和公共字段以及传递给它的类的方法。javap命令将其输出打印到stdout命令用法javap -help打印javap命令的帮助消息。javap --原创 2020-05-13 10:57:56 · 441 阅读 · 0 评论 -
jdk各种版本[openjdk/oracle/adopt/zulu...]
openjdkhttp://jdk.java.net/java-se-ri/8-MR3icedteahttp://openjdk.java.net/projects/icedtea/https://icedtea.classpath.org/wiki/Main_Pageatlassian adoptopenjdkhttps://adoptopenjdk.net/– 开发版 jdk 国内镜像https://mirrors4.tuna.tsinghua.edu.cn/AdoptOpenJDK/?原创 2020-06-01 12:03:18 · 3195 阅读 · 1 评论 -
Java 动态代理的两种常用方式
JDK 动态代理 Proxypackage note;import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import java.lang.reflect.Proxy;/** * @describe: JDK 动态代理 * @author: morningcat.zhang * @date: 2021/10/2 上午4:14 */public class ProxyMain {原创 2021-10-02 04:49:11 · 811 阅读 · 0 评论 -
Java 访问标志概要
访问标志访问标志值类方法字段0x0001publicpublicpublic0x0002privateprivate0x0004protectedprotected0x0008staticstatic0x0010finalfinalfinal0x0020super 一直为truesynchronized0x0040bridge 编译器产生的桥接方法volatile0x0080transient原创 2021-06-09 09:12:06 · 131 阅读 · 0 评论 -
一个单例模式的应用记录
今天上班路上看微信公众号,看到一段比较好的代码,特意记录下来:import java.util.concurrent.ScheduledThreadPoolExecutor;import java.util.concurrent.TimeUnit;public class CurrentTimeMillisClock { private volatile long now;...原创 2020-04-07 10:36:43 · 106 阅读 · 0 评论 -
HashMap 分析之 1.8 与 1.7 的区别简述
HashMap 分析之 1.8 与 1.7 的区别简述引入红黑树1.8中引入红黑树,至此 HashMap 的数据结构变为: 数组 + 链表 + 红黑树 static final int TREEIFY_THRESHOLD = 8; final V putVal(int hash, K key, V value, boolean onlyIfAbsent, ...原创 2019-09-04 15:11:21 · 389 阅读 · 0 评论 -
Java密码术扩展(JCE)无限强度管辖权政策文件下载
Java密码术扩展(JCE)无限强度管辖权政策文件下载JDK 9及更高版本随附,并默认使用无限制的策略文件。这里仅提供 JDK6、JDK7、JDK8 版本的 JCE 。下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jce-all-download-5170447.html百度云:链接:https://pan.ba...原创 2019-08-26 16:33:51 · 1246 阅读 · 0 评论 -
Java SPI 简介
SPIService Provider Interface (SPI) is an API intended to be implemented or extended by a third party. It can be used to enable framework extension and replaceable components.From Java documentation...转载 2019-05-21 17:42:15 · 104 阅读 · 0 评论 -
常用Java工具包
常用Java工具包1.commonscommons-lang<!-- https://mvnrepository.com/artifact/commons-lang/commons-lang --><dependency> <groupId>commons-lang</groupId> <artifactId>co...原创 2019-02-13 21:38:41 · 408 阅读 · 0 评论 -
ConcurrentHashMap为何不支持null键和null值
ConcurrentHashMap为何不支持null键和null值背景最近在梳理总结《集合 - 常用Map之间区别》,其中有一点就是 HashMap 是支持null键和null值,而 ConcurrentHashMap 是不支持的;后来查看了一下jdk源码,证明了确实是这样的。HashMap.java 部分源码 static final int hash(Object key) ...原创 2019-02-19 23:39:52 · 17401 阅读 · 11 评论 -
使用IDEA查看java文件编译后的字节码内容
首先编写一个java类 StringDemo1.javapublic class StringDemo1 { public static void main(String[] args) { String str1 = &amp;amp;amp;quot;aaa&amp;amp;amp;quot; + &amp;amp;amp;quot;bbb&amp;amp;amp;quot;; System.o原创 2019-03-08 19:41:25 · 6945 阅读 · 1 评论 -
关于 IntegerCache 的一些认识
关于 IntegerCache 的一些认识从一个小问题开始入手下面程序的输出结果是什么? @Test public void test1() { Integer num1 = 100; Integer num2 = 100; Integer num3 = 200; Integer num4 = 200; ...原创 2019-03-04 02:09:18 · 254 阅读 · 0 评论 -
自定义注解的简单用法
自定义注解@Target({ElementType.METHOD, ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)@Inherited@Documentedpublic @interface MyAnnotation { /** * 只使用一个变量是默认为value */ String va...原创 2019-04-12 13:51:21 · 90 阅读 · 0 评论 -
SimpleDateFormat 线程不安全案例
SimpleDateFormat 线程不安全案例:import java.text.SimpleDateFormat;import java.util.ArrayList;import java.util.List;import java.util.concurrent.*;public class Test1 { private static SimpleDateForma...原创 2019-04-17 14:28:55 · 589 阅读 · 1 评论 -
转载一篇关于JNI实践的博客---以及编写自己的native方法
转载自史上最详细的JNI入门教程HelloNative2 HelloNative教程下面将介绍编写 JNI 入门教程HelloNative程序的编写。主要的步骤为:编写 HelloNative.java 程序;编译并得到 HelloNative.h 头文件;编写 HelloNative.c 程序;编译动态链接库libHelloNative.jnilib;...转载 2019-04-22 11:26:19 · 184 阅读 · 0 评论 -
关于 BlockingQueue 的一些认识及资料汇总
关于BlockingQueue的一些认识及资料汇总BlockingQueue阻塞队列 BlockingQueue 支持两个附加操作的 Queue,这两个操作是:获取元素时等待队列变为非空,以及存储元素时等待空间变得可用。BlockingQueue 不接受 null 元素。试图 add、put 或 offer 一个 null 元素时,某些实现会抛出 NullPointerException。n...原创 2019-04-17 18:46:01 · 196 阅读 · 0 评论 -
Java基本类型简介
Java基本类型简介简介验证其他思考简介在Java中一共有8种基本数据类型,其中有4种整型、2种浮点类型、boolean类型和char类型。整型基本类型字节位数取值范围int4字节32bit-2^31 ~ 2^31 - 1short2字节16bit-32768 ~ 32767long8字节64bit-2^63 ~ 2^63 - 1...原创 2019-04-18 16:32:30 · 115 阅读 · 0 评论 -
关于 Unsafe 的一点认识与总结
关于 Unsafe 的一点认识与总结环境:JDK1.8u202背景与起源在学习BlockingQueue的一些基础时,看到官方资料说所有的BlockingQueue都是线程安全的;那么是怎么实现线程安全的?以[ArrayBlockingQueue]为例,查看其put方法 public void put(E e) throws InterruptedException { ...原创 2019-04-25 13:18:33 · 713 阅读 · 0 评论 -
转载:Java并发编程-原子类实现
转载:Java并发编程-原子类实现原文链接为了研究Java对原子类的实现,从AtomicInteger类开始,分析Java如果对原子操作的实现。什么是原子操作?原子操作是指不会被线程调度机制打断的操作;这种操作一旦开始,就一直运行到结束,中间不会有任何上下文的切换。注:原子操作可以是一个步骤,也可以是多个操作步骤,但是其顺序不可以被打乱,也不可以被切割只执行其中的一部分。源码分析:...转载 2019-05-07 20:09:47 · 83 阅读 · 0 评论 -
Java 中的四种引用类型
Java 中的四种引用类型1. 强引用 StrongReference2. 软引用 SoftReference3. 弱引用 WeakReference4. 虚引用 PhantomReference附录Java的内存回收不需要程序员负责,JVM会在必要时启动Java GC完成垃圾回收。Java以便我们控制对象的生存周期,提供给了我们四种引用方式;引用强度从强到弱分别为:强引用、软引用、弱引用、虚...转载 2019-05-15 20:28:09 · 82 阅读 · 0 评论 -
java探索之native方法源码实现
java探索之native方法源码实现背景不晓得小伙伴们在学习java时有没有遇到过使用native关键字修饰的方法,我记得有一次好奇java类的基类Object.java里到底有些什么,于是就打开了jdk的源码看了一下;不要问我jdk的源码怎么看,去哪里看,丑拒;以下是Object.java的源码,可以看出基本都是native修饰的方法且并没有方法体;package java.lang...原创 2019-02-16 02:41:59 · 1445 阅读 · 1 评论