Follow the public account: QXF069
Basic problem correlation
1, the meaning of the interface – Baidu
2, the meaning of abstract class – Baidu
3. The role of internal classes – LetV
4. Features of Java VIRTUAL Machine – Baidu – LetV
5. Under what circumstances will objects be disposed of by garbage collection mechanism – Meituan – Xiaomi
The difference between process and thread – Cheetah – Meituan
7, Java == and hashCode difference – Leshi
8. Implementation principle of HashMap – Meituan
9, StringBuffer-StringBuilder difference – Xiaomi – LetV – Baidu
What causes a thread to block
11. Multi-threaded synchronization – Cheetah
ArrayMap compares HashMap
13. The difference between HashMap and Hashtable – LeEco – Miui -360
14. The difference between container classes – LeEco – Meituan
15, Abstract class interface distinction -360
In Android
16, How to import external database?
What is the difference between local broadcast and global broadcast?
18. What does intentService do and what problem does AIDL solve – Xiaomi
19. Ubuntu builds android – Baidu
20. LaunchMode application scenarios – Baidu – Xiaomi – LeEco
21. Touch event transfer process – Xiaomi
22. View drawing process – Baidu
23. Multi-threaded -360
Handler,Thread and HandlerThread difference – millet
25. Thread Synchronization – Baidu
26. What is causing the memory leak – Meituan
27. ANR positioning and correction
28. What causes OOM – Letv – Meituan
29. Several ways to communicate between services and activities
How to ensure that the service is not killed in the background
31, Requestlayout onlayout, ontouch, differences and relationship between DrawChild – cheetahs
32. Implementation principle of Android animation framework
33, How much memory does Android allocate for each application – Meituan
Optimize custom view Baidu – LeEco – Xiaomi
Volley-meituan LeEco
Glide source code analysis
38. Android design Patterns
Android properties animation features – LeEco – Xiaomi
40, Activity Window View three differences,fragment characteristics -360
41, Invalidate and postInvalidate differences and use – Baidu
LinearLayout and RelativeLayout performance comparison – Baidu
View refresh mechanism – Baidu – Meituan
Architecture design – Sohu
Tencent company interview questions selected
45. Twenty million round numbers. Find the fifth and tenth digits?
46. Load a 10M image from the network
47, Custom View matters needing attention
Commonly used design patterns in projects
49. Understanding the JVM
Selected interview questions from Ali
50. Interprocess communication
What is a coroutine
What is the memory leak
Program counter, lead to logical address (virtual address) and physical address and their mapping relationship
54, The difference between arrays and lists
Concrete implementation of depth – first traversal and breadth – first traversal of binary tree
56. Structure of the heap
57. Understanding bitmap objects
58. What is deep copy and shallow copy
Whether object locks and class locks affect each other
60. Looper architecture
Custom control principle
Principle of custom control
63, ActivityThread, Ams, Wms working principle
64, Java final, finally, Finalize
There are 1 million integers in a file, separated by Spaces, in the program to judge whether the integer user input is in this file. Say the best way
Can two processes require both write and read at the same time? How do I prevent process synchronization?
67. What is volatile?
Burn an uneven rope, burn from head to tail a total of 1 hours. Now there are several rope of the same material, how to use the method of burning rope to time an hour and fifteen minutes?
Handwritten code: large integer addition
70. The resume mentions the use of a Butterknife. What stage notes are Butterknife? Is the annotation lifecycle understood?
71, The resume mentioned using Okhttp for network communication, talk about Okhttp interceptor
72, Http and Https difference, no CA certificate can use Https access
TCP is in which layer of protocol, three handshake process
Understand what encryption algorithm, say symmetric encryption and asymmetric encryption
What do you know about the JVM? Garbage collection
Do you understand the compilation process of APK? Briefly talked about DEX
77, Java common implementation of Collection class, map implementation class
78, Talk about the difference between Hashmap and Hashtable
79, The underlying implementation of Hashmap, how to resolve hash conflicts, other than this solution is there any other solution
Many websites like Sina Weibo have a short address, if let you achieve how to do
How to determine the intersection of two singly linked lists
How do I use two or more stacks to simulate queues
83, quiz: now there is a lottery activity, from 8 to 10 o ‘clock this period of time will have a number of users to participate in the lottery, now there are 10 awards, but there is not enough space to save all the data, requiring each user probability winning, and 10 o ‘clock activity cut-off moment lottery.
Second interview (50 minutes)
84, handwritten code: delete the last x node of the single linked list
Find two numbers x and y in an unordered array and make x+y=z (use hash table to replace space with time)
If there is no Message in MessageQueue, what will happen
87, talk about threads and processes, Android cross-process communication, they have not used
Talk about the AIDL principle
How many ways can a Service be started
90, The activity declaration cycle and startup mode, an example of a real scenario asking the jump after clicking back
ActivityA jumps to B process A, B lifecycle function call sequence
Knowledge of custom View
When I was working in an Internet company, I met dozens of interviewees as an interviewer. The main factor that determines whether I approve this person or not is the person’s passion for technology. Because of this geeky spirit, it’s always a matter of time to do anything technical, so be as passionate about it as possible during the interview.
In addition to this factor, what can we do to have a greater probability of entering first-line companies?
Another important factor is the depth of knowledge. I think depth is better than breadth, which can be understood by reading various articles, but when confronted with practical problems, it often depends on the depth of their own knowledge. For example, Java programmers know that Java is cross-platform because it compiles to platform-independent bytecode, but how many people know how to compile? If you don’t know how the virtual machine works, you can’t make the Atlas container framework. For example, many people know what the responsibilities of the four components are and how to optimize performance, but if they do not know how the Framework layer system services work, they will not be able to create a plug-in Framework.
Because the business complexity of first-tier companies also determines the depth of business, it is difficult to be competent without good in-depth exploration ability, so the depth of knowledge is also very important.
Geeky spirit combined with depth of knowledge in a particular area can be up to tier 1 corporate standards. There’s also a lot of irrationality in interviews, but that’s something you can’t control, so don’t get discouraged if you fail because of it. I think the ability is proportional to the return, even if it doesn’t happen at the moment, it will happen at the next moment, as long as we master the ability we should master, one day we will enter our ideal company.
Concerned public Account: