Xianyu's crazy Java interview notes are simply written out all the Java knowledge interview questions. It's so fragrant!

Foreword As a Java programmer, you are always trapped in business development. Every day you are busy typing code, from system development to bug modification, you feel that you are omnipotent. However, at an occasional party, you heard that the classmates who debuted with you already had an annual salary of 500,000, but you were shy in the pocket. So you also want to see new opportunities, find a new platform, and develop well.

 

But during the interview, when the smiling interviewer asked those Java questions that you couldn't be more familiar with, you just felt familiar, but you couldn't answer it. For example, the working principle of HashMap, or the usage scenarios of volatile.

At this time, you may doubt your abilities and hate why you didn't review it well.

This new version of the document has been uploaded on Github for a week and has harvested 30K+star Java core interview skills (this parameter, I don’t need to say more about the quality) is very comprehensive, including Java basics, Java collections, JavaWeb, Java exceptions, OOP, IO and NIO, reflection, annotation, multithreading, JVM, MySQL, MongoDB, Spring family bucket, computer network, distributed architecture, Redis, Linux, git, front-end, algorithm and data structure, MyBatis, RocketMQ, Netty, Dubbo , Zookeeper, distributed cache, data structure, etc. are very rich in content, and have helped many people win offers from first-line Internet companies. Let me share with you.

JavaOOP

  • What is B/S architecture? What is C/S architecture
  • What development platforms does Java have?
  • What is JDK? What is JRE?
  • What are the characteristics of the Java language
  • The difference between object-oriented and process-oriented
  • What is a data structure?
  • What are the data structures of Java?
  • What is OOP?
  • The relationship between class and object?
  • There are several data types in Java

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

Java collections/generics

  • The difference between ArrayList and linkedList
  • The difference between HashMap and HashTable
  • Collection package structure, the difference with Collections
  • Common features of generics (to be added)
  • Talk about the difference between List, Set and Map
  • What is the difference between Array and ArrayList?
  • What are the characteristics of Map
  • The collection is stored in the Java.util package, there are mainly several interfaces
  • What is the list interface
  • Talk about ArrayList (array)

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

Due to the fact that there are too many details in the document, only the chapters with some knowledge points have been edited. Under the rough introduction, there are more detailed content in the small nodes of each chapter! The following is part of the chapter list. Due to the length of the headline, the detailed explanations on the catalog cannot be listed one by one. At the end of the article, there are all detailed explanations of the following chapters.

Java exception

  • What are the two types of exceptions in Java?
  • How many exception handling mechanisms are there?
  • How to customize an exception
  • try catch fifinally, there is return in try, is finally executed?
  • Excption and Error packet structure
  • Difference between Thow and Thorws
  • What is the difference between Error and Exception?
  • What is the difference between error and exception

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

IO and NIO in Java

  • IO flow in Java?
  • The difference between Java IO and NIO
  • What are the commonly used io classes
  • The difference between byte stream and character stream
  • Blocking IO model
  • Non-blocking IO model
  • Multiplexed IO model
  • Signal-driven IO model
  • Asynchronous IO model
  • JAVA NIO

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

Java reflection

  • In addition to using new to create objects, what other methods can be used to create objects?
  • Is it efficient to create objects through Java reflection or to create objects through new?
  • The role of java reflection
  • Where will the reflection mechanism be used?
  • Implementation of reflection:
  • Classes that implement Java reflection:
  • Advantages and disadvantages of reflection mechanism:
  • Java reflection API
  • Steps to use reflection (obtain Class object, call object method)
  • There are several ways to obtain a Class object
  • Use reflection to dynamically create object instances

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

Due to space limitations, the detailed information of the pdf document is too comprehensive, and there are too many details, so only some of the knowledge points are screenshots for a rough introduction, and each small node has more detailed content! The program ape (yuan) in need can help Sanlian private messaging (core) or just look below to get it!

Java serialization

  • What is java serialization and how to implement java serialization?
  • Save (persistent) objects and their state to memory or disk
  • Serialized objects are kept as byte arrays-static members are not kept
  • Serialized user remote object transfer
  • Serializable achieve serialization
  • writeObject and readObject custom serialization strategy
  • Serialized ID
  • Serialization does not save static variables
  • The Transient keyword prevents the variable from being serialized into the file
  • Serialization (implemented in deep clone one)

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

Multithreading & Concurrency

JAVA concurrent knowledge base

  • There are several ways to implement multithreading in Java
  • Inherit the Thread class
  • Implement the Runnable interface.
  • ExecutorService, Callable, Future have return value threads
  • Thread pool-based approach
  • 4 thread pools
  • How to stop a running thread
  • What is the difference between notify() and notifyAll()?
  • What is the difference between sleep() and wait()?
  • What is volatile? Can order be guaranteed?

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

JVM

  • Will there be a memory leak in java? Please describe briefly.
  • In 64-bit JVM, the length of int is the majority?
  • What is the difference between Serial and Parallel GC?
  • In 32-bit and 64-bit JVM, the length of int type variable is the majority?
  • What is the difference between WeakReference and SoftReference in Java?
  • What does the JVM option -XX:+UseCompressedOops do? Why use
  • How to judge whether the JVM is 32-bit or 64-bit through a Java program?
  • What is the maximum heap memory of 32-bit JVM and 64-bit JVM?
  • What is the difference between JRE, JDK, JVM and JIT?
  • Explain Java heap space and GC?

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

Mysql

  • Database storage engine
  • InnoDB (B+ tree)
  • TokuDB (Fractal Tree-node with data)
  • Memory
  • What are the database engines
  • The difference between InnoDB and MyISAM
  • index
  • Common indexing principles are
  • What are the three paradigms of the database
  • First Normal Form (1st NF-the columns are not subdivided)

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

Due to space limitations, the detailed information of the pdf document is too comprehensive, and there are too many details, so only some of the knowledge points are screenshots for a rough introduction, and each small node has more detailed content! The program ape (yuan) in need can help Sanlian private messaging (core) or just look below to get it!

Redis

  • What is Redis?
  • How is Redis different from other key-value stores?
  • Redis data type?
  • What are the benefits of using Redis?
  • What are the advantages of Redis over Memcached?
  • What are the differences between Memcache and Redis?
  • Is Redis single-process single-threaded?
  • What is the maximum capacity of a string type smart storage?
  • Redis persistence mechanism
  • Cache avalanche, cache penetration, cache warm-up, cache update, cache degradation, etc.

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

Memcached

  • What is Memcached and what does it do?

  • What are the application scenarios of memcached service in enterprise cluster architecture?
  • How to realize distributed cluster of Memcached service?
  • What are the features and working principle of Memcached service?
  • Briefly describe the principle of Memcached memory management mechanism?
  • How does memcached work?
  • What is the biggest advantage of memcached?
  • memcached and MySQL query
  • What are the advantages and disadvantages of memcached compared with the server's local cache (such as PHP APC, mmap files, etc.)?
  • What is the cache mechanism of memcached?
  • How does memcached implement redundancy mechanism?

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

MongoDB

  • What is mongodb?
  • What are the characteristics of mongodb?
  • What do you mean by NoSQL database? What is the direct difference between NoSQL and RDBMS? Why use and not use NoSQL database? Talk about the advantages of NoSQL database?
  • What types of NoSQL databases are there?
  • What is the most basic difference between MySQL and MongoDB?
  • How do you compare MongoDB, CouchDB and CouchBase?
  • What makes MongoDB the best NoSQL database?
  • Will journal playback encounter problems when the entry is incomplete (for example, there happens to be a midway failure)?
  • What is the role of the analyzer in MongoDB?
  • What is a namespace?

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

Spring

  • What are the main features of different versions of Spring Framework?
  • What is Spring Framework?
  • List the advantages of Spring Framework.
  • What are the different functions of Spring Framework?
  • How many modules are there in Spring Framework and what are they?
  • What is a Spring configuration file?
  • What are the different components of a Spring application?
  • What are the ways to use Spring?
  • What is the Spring IOC container?
  • What is dependency injection?

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

Spring Boot

  • What is Spring Boot?
  • Why use SpringBoot
  • What are the advantages of Spring Boot?
  • What is the core annotation of Spring Boot? Which annotations are mainly composed of?
  • What are the ways to run Spring Boot
  • How to understand Starters in Spring Boot?
  • How to run some specific code when Spring Boot starts?
  • Does Spring Boot need a separate container to run?
  • What is the monitor in Spring Boot?
  • How to implement exception handling using Spring Boot?

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

Due to space limitations, the detailed information of the pdf document is too comprehensive, and there are too many details, so only some of the knowledge points are screenshots for a rough introduction, and each small node has more detailed content! The program ape (yuan) in need can help Sanlian private message (core) or directly scan below to get it.

Spring Cloud

  • What is Spring Cloud?
  • What are the advantages of using Spring Cloud?
  • What does service registration and discovery mean? How to achieve Spring Cloud?
  • What is the significance of load balancing?
  • What is Hystrix? How does it achieve fault tolerance?
  • What is a Hystrix circuit breaker? Do we need it?
  • What is Netflix Feign? What are its advantages?
  • What is Spring Cloud Bus? Do we need it?
  • What is a microservice
  • What is a service circuit breaker? What is service degradation

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

RabbitMQ

  • What is rabbitmq
  • Why use rabbitmq
  • Scenes using rabbitmq
  • How to ensure that the message is sent to RabbitMQ correctly? How to ensure that the message recipient consumes the message?
  • How to avoid repeated delivery or repeated consumption of messages?
  • What transmission is the message based on?
  • How is the message distributed?
  • How to route the message?
  • How to ensure that the message is not lost?
  • What are the benefits of using RabbitMQ?

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

Dubbo

  • Why use Dubbo?
  • What are the layers of Dubbo's overall architecture design?
  • What communication framework is used by default, are there other options?
  • Is the service call blocking?
  • What registry is generally used? Are there other options?
  • What serialization framework is used by default, and what else do you know?
  • What is the principle that the service provider can realize the failure proposal?
  • Why doesn't the service launch affect the old version?
  • How to solve the problem of too long service call chain?
  • What are the core configurations?

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

MyBatis

  • What is Mybatis?
  • Advantages of Mybaits
  • Disadvantages of MyBatis framework
  • MyBatis framework applicable occasions
  • What is the difference between MyBatis and Hibernate?
  • What is the difference between #{} and ${}?
  • What should I do when the attribute name in the entity class is different from the field name in the table?
  • How to write like statement in fuzzy query?
  • Usually an Xml mapping file will have a Dao interface corresponding to it. What is the working principle of this Dao interface? When the method in Dao interface has different parameters, can the method be overloaded?
  • How to get the automatically generated (primary) key value?

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

ZooKeeper

  • What is Zookeeper?
  • How does Zookeeper ensure distributed consistency characteristics?
  • What does ZooKeeper provide?
  • Zookeeper file system
  • ZAB agreement?
  • Four types of data nodes Znode
  • Zookeeper Watcher mechanism-data change notification
  • Client registration Watcher implementation
  • Server-side processing Watcher implementation
  • Client callback Watcher

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

data structure

  • Stack
  • Queue
  • Link
  • Hash Table
  • Sorted binary tree
  • Prefix tree
  • Red black tree
  • B-TREE
  • bitmap

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

Elasticsearch

  • How much does elasticsearch know, talk about your company's es cluster architecture, index data size, number of shards, and some tuning methods.
  • What is the inverted index of elasticsearch
  • What to do if there is too much data in elasticsearch index, how to tune and deploy
  • How elasticsearch implements master election
  • Describe in detail the process of Elasticsearch indexing documents
  • Describe in detail the process of Elasticsearch search?
  • When Elasticsearch is deployed, what are the optimization methods for Linux settings
  • What is the internal structure of lucence?
  • How does Elasticsearch implement Master election?
  • Among the nodes in Elasticsearch (for example, there are 20 in total), 10 of them choose one master, and the other 10 choose another master. What should I do?

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

Kafka

  • What is Kafka
  • Data files of partition (offset, MessageSize, data)
  • Data file segmentation (sequential read and write, segment command, binary search)
  • Load balancing (partitions will be evenly distributed to different brokers)
  • Batch send
  • Compression (GZIP or Snappy)
  • Consumer design
  • Consumer Group
  • How to get a list of topics
  • What are the command lines for producers and consumers?

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

Microservice

  • What are the advantages of microservice architecture?
  • What are the characteristics of microservices?
  • What is the best time to design a microservice?
  • How does the microservice architecture work?
  • What are the advantages and disadvantages of the microservice architecture?
  • Monolithic, what is the difference between SOA and microservice architecture?
  • What challenges do you face when using microservice architecture?
  • What are the main differences between SOA and microservice architecture?
  • What are the characteristics of microservices?

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

Linux

  • What symbol is used to represent the absolute path? What is the current directory and upper directory? What is the main directory? What command is used to switch directories?
  • How to check the current process? How to perform exit? How to check the current path?
  • How to clear the screen? How to exit the current command? How to perform sleep? How to check when
  • What function does the Ls command perform? What parameters can be taken and what is the difference?
  • See what commands are in the file
  • List a few commonly used Linux commands
  • How do you check the logs?
  • Establish soft link (shortcut), and hard link command
  • What command is used for directory creation? What command is used to create a file? What command is used to copy files?
  • What commands can be used to view file contents?

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

Is the interview difficult or not? Is the final result good or bad? It depends on the interviewer's background (aura + skills), mentality and cognition, and communication skills. And some mainstream large-scale Internet company interviews (Alibaba, JD, Meituan, Didi) require you to show your ability during the interview, so as to gain the appreciation and recognition of the interviewer.

And programmers need to go through layers of interviews when applying. As the saying goes, sharpening the knife and not cutting firewood by mistake, and preparing for the interview can help everyone better deal with the interviewer’s questions and unexpected situations during the interview.

Due to space limitations, the detailed information of the pdf document is too comprehensive, and there are too many details, so only some of the knowledge points are screenshots for a rough introduction, and each small node has more detailed content! The program ape (yuan) in need can help private message (core) after three consecutive runs or directly scan below to get it.

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

 

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

 

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

 

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

 

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

 

Horror: This Github fairy interview note simply writes out all the Java knowledge interview questions

Guess you like

Origin blog.csdn.net/m0_46757769/article/details/109096057