Java
-
Deep understanding of Java generics
brief introduction Generics is a concept introduced by JDK 5. Generics are mainly introduced to ensure the security of…… -
It’s 2020. Don’t you know these five java ide artifacts?
Tiobe's programming language ranking list came out in April. Java still ranks first, and the latest version of Java ha…… -
Maven’s build lifecycle and common plugins
brief introduction Maven and gradle should be the two building tools most used by modern Java programmers. Before they…… -
Java safe coding guide: thread safety rules
brief introduction If we introduce shared variables into multithreading, we need to consider thread safety in multithr…… -
Junior sister learning java IO: buffer and buff
brief introduction The younger martial sister goes farther and farther on the road of learning NiO. The only thing tha…… -
Use of operation type and peek in Java 8 stream
Use of operation type and peek in Java 8 stream brief introduction As a stream operation, Java 8 stream has two types …… -
Use of ThreadLocal in Java
ThreadLocal is mainly used to store data for the current thread, which can only be accessed by the current thread. Whe…… -
Implementation of non blocking algorithm (lock free)
Implementation of non blocking algorithm (lock free) In the last article, we talked about the disadvantages of using l…… -
New features of jdk10: VAR generics and multiple interface implementations
brief introduction In the new feature of jdk10: local variable type VaR, we talked about why and how to use var. Today…… -
Lambda expression best practices
brief introduction Lambda expression is a functional programming framework introduced by Java 8. In previous articles,…… -
Junior sister learning java IO: those strange buffers in NiO
brief introduction Demons and monsters show up quickly. Today, senior brother f helped the younger martial sister to k…… -
Java secure coding guide: double detection of locks
brief introduction Double detection locking mode is a design mode. We reduce the cost of acquiring locks by detecting …… -
Spring Boot 2. X Series tutorial: seven days from scratch to master spring boot – continuous update
brief introduction Since the birth of spring, spring has become the de facto J2EE standard. As a lightweight J2EE appl…… -
Use site Maven plugin to build a public warehouse on GitHub
brief introduction Maven is a building tool we often use in developing Java programs. In the process of team developme…… -
Troubleshoot: using jfr to analyze performance problems
brief introduction The performance analysis of Java program is a very difficult problem. Especially for a very complex…… -
Non blocking synchronization mechanism and CAS
Non blocking synchronization mechanism and CAS We know that before Java 5, synchronization is achieved through the syn…… -
New features of jdk11: http API and reactive streams
New features of jdk11: http API and reactive streams brief introduction In the new feature of jdk11: new HTTP API, we …… -
Five important new features of jdk12
Five important new features of jdk12 Introduce JVM constant API Extended switch statement Unicode 11.0 support Square …… -
New feature of jdk12: compactnumberformat
New feature of jdk12: compactnumberformat brief introduction Jdk12 introduces a new class for formatting numbers calle…… -
The use of futuretask in Java
Introduction to futuretask Conversion of callable and runnable Run as runnable -
Detailed explanation and misunderstanding of Java 8 stream reduce
Detailed explanation and misunderstanding of Java 8 stream reduce brief introduction The stream API provides some pred…… -
Synchronized keyword in Java concurrency
In a multi-threaded environment, we often encounter resource competition. For example, multiple threads need to modify…… -
Deeply understand the difference between HashMap and treemap
Deeply understand the difference between HashMap and treemap brief introduction HashMap and treemap are two classes co…… -
Daemon thread in Java
Daemon thread in Java There are two types of threads in Java, user threads and daemon threads. User threads is a high …… -
Important new features of jdk11
Jdk11 released Oracle no longer provides JRE and server JRE downloads Delete deployment tool JavaFX is no longer inclu…… -
New features of jdk10: VaR and anonymous classes
brief introduction I believe everyone has used anonymous classes. After learning the lambda expression in jdk8, you ca…… -
The use of future in Java
Future is an interface introduced by Java 1.5, which can be easily used to obtain asynchronous results. This article w…… -
Eight pictures to thoroughly understand jdk8 GC tuning script – PDF download
brief introduction There are many JVM parameters. According to my statistics, there are 1853 JVM parameters in jdk8 an…… -
New features of jdk9: String compression and character encoding
brief introduction What is the underlying storage of string? I believe most people will say it's an array. If you ask …… -
Introduction to java tools in jdk14
The story happened In the era of no IDE, experts still program through Notepad. At that time, people who could write p…… -
Java secure coding guide: Method writing guide
brief introduction The logic of a java program consists of methods. In the process of writing methods, we also need to…… -
Phaser doesn’t understand. What else do you learn about multithreading
In the previous article, we talked about the use of cyclicbarrier and countdownlatch. Here we review that countdownlat……