Job hopping happens all the time, but I suggest you think about why you want to jump ship before you do. Must not follow the trend, see colleagues one by one to go, oneself also blindly start the interview up (during the period was not fully prepared), is it because of technical reasons (affect their own development, offset their own planning track), or less money, not appreciated.

Poorly prepared interviews are a waste of time and irresponsible (if your title is high, forget it).

Today, I’m going to share with you the Java interview outline that Chenssy has compiled for this job change. Most of them are interview questions, which can be used to fill in the gaps. Of course, there is no way to cover all the questions listed here.

Project introduction

Most of the time, this is the opening question in an interview, and the interviewer asks this question to measure your overview skills and overall vision. Some people often complain that they are piling up business every day but not growing. In fact, in many cases the heap business does exist, but it is not without growth. It is not middleware or technical architecture that is growth. For example, our demand analysis ability, communication and collaboration ability, product thinking ability and abstract modeling ability are all very important hard strengths.

Okay, let’s move on to the main text.

1. Define what the project does

2. Define the value of the project. (Why did you do this project, what pain points did it address, and what value did it bring?)

3. Define the function of the project. (What features are involved in this project?)

4. Define the technology of the project. What technologies are used in this project?

5. Define the position and role of individuals in the project. What was your role in the project?

6. Define the overall structure of the project.

7. Identify the strengths and weaknesses of the project and how you would redesign it.

8. Identify highlights of the project. (What are the highlights of this project?)

9. Identify technical growth. (What technical growth did you experience through this project?)

Java based

1, The difference between List and Set

2. How is a HashSet guaranteed to be non-repetitive

3. Is HashMap thread safe, and why not?

4. Expansion process of HashMap

5. What are the differences between HashMap 1.7 and 1.8?

6. Final Finally Finalize

7. Strong reference, soft reference, weak reference, virtual reference

Java reflection

9, Arrays. Sort implementation principle and Collection implementation principle

10. LinkedHashMap application

11. Implementation principle of Cloneable interface

12. Anomaly classification and processing mechanism

What is the difference between ‘wait’ and ‘sleep’

How are arrays allocated in memory

Java concurrency

1. Realization principle of synchronized and lock optimization?

2. How does volatile work?

Java semaphores?

4. The difference between synchronized and ordinary methods?

5. How to implement that all threads wait for an event to occur before executing it?

6, the CAS? What are the defects of CAS and how to solve them?

7. What’s the difference between synchronized and lock?

8, How to lock Hashtable?

HashMap concurrency problem?

10, ConcurrenHashMap? Why red black trees in 1.8?

11, AQS

12. How to detect deadlocks? How do I prevent deadlocks?

13. Java Memory Model?

14. How to ensure that i++ results are correct in multiple threads?

What are the types, differences and usage scenarios of thread pools?

Analysis of thread pool implementation principle and thread scheduling process?

17, how to tune the thread pool, how to confirm the maximum number?

18. What should we pay attention to when using the ThreadLocal principle?

19. What are the uses of CountDownLatch and CyclicBarrier and the differences between them?

20. LockSupport tool

Condition interface and its implementation principle

22. Understanding Fork/Join framework

The principle of segmental lock, lock force reduced thinking

24. The eight blocking queues and the characteristics of each blocking queue

Spring

BeanFactory and FactoryBean?

2. Understanding of Spring IOC and its initialization process?

BeanFactory and ApplicationContext?

How is the life cycle of Spring beans managed?

5. What is the loading process of Spring beans?

6. If you were asked to implement Spring AOP, how would you do it?

7. What issues would you pay attention to if you were asked to implement Spring IOC?

How does Spring manage transactions? Transaction management mechanism?

What are the different transaction propagation behaviors of Spring?

What design patterns are used in Spring?

How does Spring MVC work?

How does Spring loop injection work?

13. Understanding Spring AOP, terms, how do they work with each other?

14. How does Spring secure Controller concurrency?

Netty

1. BIO, NIO and AIO

2. Netty components

3. Netty’s threading model

4. Causes and solutions of TCP packet sticking/unpacking

5. What serialization protocols do you know? Including usage scenarios and how to choose

6, Netty zero copy implementation

7. What are the high performance aspects of Netty

Distributed correlation

1. The underlying implementation principle and mechanism of Dubbo

2. Describe the detailed process of a service from publication to consumption

3. How does distributed system do service governance

4. The concept of idempotency of interfaces

5. How does messaging middleware solve the problem of message loss

6. How to handle Dubbo service request failure

7. Will the reconnection mechanism cause errors

8. Understanding distributed transactions

9. How to achieve load balancing and what algorithms can be implemented?

10. What is the purpose of Zookeeper and the principle of election?

11. Vertical split and horizontal split of data.

Zookeeper principles and application scenarios

13. Zookeeper Watch mechanism

14. How to handle the redis/ ZK node outage

15. How to achieve unique serial number in distributed cluster

16, how to make a distributed lock

17, used what MQ, how to use, compared with other MQ advantages and disadvantages, MQ connection is thread safe

18. How can THE DATA of MQ system be guaranteed against loss

List all the strategies you can think of to divide the database into different tables. How to solve the problem of full table query after dividing database and table

Zookeeper election strategy

21, Global ID

The database

1, what is the optimization of mysql pagination

2, pessimistic lock, optimistic lock

3, composite index, the most left principle

Mysql > alter table lock

5. Mysql performance optimization

Mysql > alter table hash; What index is used for what situation

Transaction characteristics and isolation level

The cache

1, Redis used what data data, and how to achieve the bottom of Redis

2, Redis cache penetration, cache avalanche

3. How to use Redis to implement distributed lock

4. How to solve the concurrency competition problem of Redis

5, Redis persistent several ways, what are the advantages and disadvantages, how to achieve

6. Redis cache invalidation policy

7, Redis cluster, high availability, principle

Redis cache sharding

9. Redis’ data elimination strategy

JVM

1. Detailed JVM memory model

2, tell me when memory overflow, memory leak?

3. Talk about Java thread stacks

4. What are the criteria for determining the progression from the younger generation to the older generation of the JVM?

5. FullGC occurs frequently in JVM. How to check problems online?

6. Why is the parent delegate pattern used for class loading? Are there any scenarios that break this pattern?

7. Class instantiation order

8. JVM garbage collection mechanism, when to trigger MinorGC, etc

What does a complete GC flow (from YGC to FGC) look like in the JVM

10, various recyclers, their advantages and disadvantages, focusing on CMS, G1

11. Various recycling algorithms

12, OOM error, StackOverflow error, Permgen space error

If you have any doubts about the answers to the above questions, you can join knowledge Planet to ask questions. Currently 230+ friends have joined.