当前位置:网站首页>Master this set of refined Android advanced interview questions analysis, oppoandroid interview questions
Master this set of refined Android advanced interview questions analysis, oppoandroid interview questions
2022-07-07 16:43:00 【InfoQ】
start
Android Develop several parts of the interview

- The touch event must be passed to Activity Then pass it on to View The? ?
- If you want to in Application Of onCreate Execute some logic before the lifecycle , Where can I put it ?
- draw、onDraw、dispatchDraw What is the order of execution ?
- View The real display is in onResume Before or after ?
- Activity There is a nested Fragment,startActivity after ,Activity and Fragment What is the life cycle sequence of ?

Key project experience
- Why do you do this ,
- What factors are considered and how are they done ,
- What effect has been achieved ( For example, the starting speed is from 1000ms drop to 200ms, This specific data )
Beyond technology
My face to face summary
- Android Features of each version ( for example 6.0, Dynamic permissions )
- ANR Why
- Android The way and comparison of inter process communication in
- AsyncTask Implementation principle, advantages and disadvantages of
- Handler Mechanism
- Customize view Trilogy , technological process ( Or the actual scene , For example, implement a dial , How do you do it? )
- FrameWork hierarchy
- Activity Life cycle (A Jump to B,A and B The execution sequence of the life cycle in )
- Dvlik、ART、JVM The difference between the three virtual machines
- Can you be in Africa UI Thread update UI
- Service and IntentService The difference between
- Thread and HandlerThread The difference between
- Touch Event distribution mechanism
- How do you know a Activity Whether there was a leak
- Click on a from APP What happened to the icon
- Activity Start process ( Look at the source code , Just say it roughly )
- Activity Boot mode ( Four kinds of )
- Intent start-up Activity The way
- onStart and onResume The difference between
- LruCache And how it works
- Android Medium MVC、MVP、MVVM The difference and connection
- Parcelable and Serializable The difference between
- Service Life cycle
- Service Startup mode and difference of
- Binder Mechanism
- onSaveInstanceState and onRestoreInstanceState When to call ( You need to understand , There is usually a scene for you to judge )
- onNewIntent When to call ( ditto )
- Android Performance optimization and memory optimization in
- RxJava The way ( Common operators , Back pressure , Thread switching principle , The practical application )
- RxAndroid The way
- EventBus principle
- Volley principle
- OkHttp principle
- Retrofit principle
- RxJava and Retrofit combination
- Dagger2 principle
- Let's introduce componentization ( Why there should be componentization , How to resolve merge conflicts )
- Quickly introduce
- Common methods of screen adaptation
- Service、 Process keeping alive
- Glide principle
- AsyncTask principle
- SurfaceView And the general View The difference between
- Implementation principle of dependency injection framework
- Git project management
- What is L3 cache
- Common design patterns ( Master common about 10 Plant on Ok)
- ThreadLoal Function and principle of
- Implementation mode and principle of thread
- State of thread , How to create threads , Transition between thread states ( For example, when a thread changes from running to blocking )
- State of process
- transient The role of keywords
- sleep() and wait() The difference between
- hashcode() The role of methods
- == and equals() Method difference ( Why rewrite equals() Methods have to be rewritten hashcode Method )
- Java Three characteristics of
- The difference between interface and abstract class
- Difference between process and thread
- Meaning of thread pool parameters , And four common thread pool application scenarios
- Characteristics, principles and application scenarios of blocking queue
- yield() The role of methods
- The type of multithreaded lock ,ReentrantLock,Lock,synchrnoized Keywords, etc
- volatile The role of keywords ( Role in single case )
- The concept of closures
- Generic ( What is type erasure , Why generics )
- Lock optimization method ( spinlocks 、 Adaptive spin 、 Lock elimination 、 Lock coarsening 、 Biased locking )
- Class execution order
- StringBuffer and StringBuilder The difference between
- HashMap Implementation principle of ( It is best to 1.8 Before and 1.8 After that, you should know )
- ConcurrentHashMap Implementation principle of ( Same as 1.8 Know before and after )
- ArrayList and LinkedList The difference between
- Java Memory area ( The difference between heap and stack , What is a runtime constant pool )
- Packing and unpacking
- OOM abnormal
- GC Mechanism (GC Area , How to judge whether an object can be recycled ,GC Algorithm ,GC Strategy )
- Class loading mechanism ( Class loading process parent delegation model )
- Java Memory model ( Main memory and working memory )
- Atomicity (AtomicInteger principle )、 visibility (volatile keyword )、 Orderliness , How to ensure
- Antecedent principle (happens-before principle )
- Thread safe implementation method
- The type of lock ( Pessimistic locking , Optimism lock CAS Algorithm , Fair lock , How to realize unfair lock )
- StringBuffer and StringBuilder difference
- annotation ( Custom annotation )
- The concepts and differences of four kinds of references
- HTTP agreement ( Head structure , Several request methods , Caching mechanisms , The difference between the versions )
- HTTPS agreement , and HTTP The difference between agreements , The process of key agreement ,SSL Mechanism
- Symmetric and asymmetric encryption
- TCP and UDP The difference between
- TCP Three handshakes of 、 Four waves ( Including status code , And why wait after four waves 2*TIME_WAIT)
- TCP congestion control mechanism
- TCP Sliding window mechanism
- TCP Timeout retransmission mechanism
- DNS agreement
- Five layer network model ( The physical layer , Data link layer , The network layer , Transport layer , application layer )
- IP Head
- Enter a web address in the browser address , What happened?
- Linked list ( One way linked list , Double linked list )
- Array ( Rotated array )
- queue ( deque , Blocking queues )
- Stack
- Pile up ( Big root pile 、 Heap )
- Binary tree ( Perfect binary tree 、 Full binary tree 、 Binary sort tree 、 Balanced binary trees , Red and black trees )( Depth traversal , Sequence traversal )
- chart ( Focus on the depth first traversal and breadth first traversal of the graph )
- Seven sorting algorithms ( Bubbling , choice , Insert , Merge sort , Quick sort , Heap sort , Shell Sort )
- The finger of the sword offer Algorithm problem on ( Be able to compare directories , Look at the title , Can have ideas , Just ok)
- Two points search
- Two stacks implement a queue , Two queues implement a stack
- Massive data sorting
- topK problem , Yes 1 Tens of millions , How to quickly find the biggest 100 individual
- Merge two ordered arrays , Merge two ordered lists
- Young's matrix ( Horizontal increment , Increasing vertically ) How to find the specified number in
- Flip a sentence , for example I am 3 years old, After flipping ,old years 3 am I
- Yes 10 Billion data , Now only 200M Memory , How to find this 10 The most frequent of 100 million data 100 Data
Last

边栏推荐
- Pycharm terminal enables virtual environment
- Logback logging framework third-party jar package is available for free
- php 自带过滤和转义函数
- ATM system
- laravel post提交数据时显示异常
- PHP realizes wechat applet face recognition and face brushing login function
- Personal notes of graphics (2)
- PHP中exit,exit(0),exit(1),exit(‘0’),exit(‘1’),die,return的区别
- Usage of config in laravel
- 全网“追杀”钟薛高
猜你喜欢
随机推荐
PHP实现微信小程序人脸识别刷脸登录功能
JS中null NaN undefined这三个值有什么区别
SqlServer2014+: 创建表的同时创建索引
最新2022年Android大厂面试经验,安卓View+Handler+Binder
数据中台落地实施之法
水平垂直居中 方法 和兼容
C语言进阶——函数指针
华东师大团队提出,具有DNA调控电路的卷积神经网络的系统分子实现
Tragedy caused by deleting the console statement
The team of East China Normal University proposed the systematic molecular implementation of convolutional neural network with DNA regulation circuit
Three. JS series (1): API structure diagram-1
[hcsd celebrity live broadcast] teach the interview tips of big companies in person - brief notes
Binary search tree (basic operation)
作为Android开发程序员,android高级面试
The difference and working principle between compiler and interpreter
Cesium (4): the reason why gltf model is very dark after loading
无法将“pip”项识别为 cmdlet、函数、脚本文件或可运行程序的名称
As an Android Developer programmer, Android advanced interview
删除 console 语句引发的惨案
MySQL中, 如何查询某一天, 某一月, 某一年的数据



![[Android -- data storage] use SQLite to store data](/img/f6/a4930276b3da25aad3ab1ae6f1cf49.png)


![[designmode] proxy pattern](/img/ed/642aebc7b49cbf4d30b517665b2438.png)

