Foreword
Java as a practitioner, when looking for work, it must be asked about the JVM-related knowledge. JVM mastery of knowledge, in the eyes of many of the interviewer is an important criterion candidates technical depth. Most people may not have actual experience in the development and use of the JVM, the next article in this series will take you in-depth understanding of the various knowledge JVM need to know. This will also help you transition from junior programmer to senior programmer.
Share a sort of Java programmers usually learn today JVM essential study documents, regardless of this document is to understand the JVM developers and friends are just learning a very good content, but also the selection of the document review interviews ! Also prepared a current Internet's Java interview interview knowledge of high-frequency documents free for everyone to share!
The JVM organize knowledge content of the document include:
- JVM memory area
- Class loading mechanism
- JVM execution subsystem
- Garbage collector and memory allocation strategy
- Java Performance Tuning
- Delegate parents
- Performance Optimization (asynchronous, clustering, optimization methods commonly used)
A, Java memory domain
- History of virtual machines
- The future of Java technology Glance
- Run time zone data
- Standing threads perspective heap and stack
- Stack access method
- Virtual machine object
- Heap memory overflow parameter settings and actual combat
Second, the garbage collector and memory allocation strategy
- GC Overview
- Survival determination target
- Analysis of strong, weak, and other applications
- GC algorithm
- Generational collection
- Stop The World Phenomenon
- GC log interpretation
- Memory allocation and recovery strategies
- Memory leaks and memory overflow Discrimination
- JDK provides us with the tools
- Learn MAT
- Garbage collector
Three, JVM execution subsystem
- Class class file is essentially
- Class File Format
- Bytecode instruction
- Class loading mechanism
- Detailed stack frame
- Detailed Method Invocation
- Bytecode interpreter stack-based execution engine
Fourth, Java programmers to write efficient and elegant
- Too many constructor parameters of how to do?
- It need not be instantiated private constructor
- Do not create unnecessary objects
- Avoid using termination method
- Members of the class and accessibility minimized
- So minimize variability
- Priority use of composite
- The interface is superior to abstract class
- The variable parameters to be used with caution
- Returns an array of length zero or collection, do not return null
- Priority use of standard exceptions
- Instead of int enumeration constants
- The scope of local variables to minimize
- Accurate calculation, avoiding the use of float and double
- Beware string concatenation performance
Five-depth understanding of performance optimization
- Commonly used performance evaluation / test indicators
- Commonly used performance optimization tool
- Learn more about Application Performance Optimization Service
As the article space reasons, not one more show, a friend in need can receive free private letter I!
JVM performance optimization and knowledge part of the directory
List
Welcome to public concern number "old boy's growth path"; selection of dry goods continued weekly, finishing some of the information will be shared out in public No.