2020年Android高级面试题总结(附答案解析)

这篇博客总结了2020年Android面试的高级题目,涵盖对象创建过程、内存管理、内部类、线程、并发、事件分发、绘制机制、Service生命周期等核心知识点,帮助读者深入理解Android系统并提升面试技巧。
摘要由CSDN通过智能技术生成

答:方法名+参数类型+参数顺序(返回值不是)

2.finalize的工作原理

答:一旦垃圾收集器准备好释放对象占用的存储空间,它首先调用finalize(),而且只有在下一次垃圾收集过程中,才会真正回收对象的内存.所以如果使用finalize(),就可以在垃圾收集期间进行一些重要的清除或清扫工作。此外系统进行垃圾回收时并不保证一定会调用它,所以可以说它和对象被回收没有必然关系。

3.一个对象的创建过程

答:例如有一个Dog类:

1.即使没有static,构造器其实也是静态方法,所以当首次创建Dog时或者Dog的静态域或者静态方法被访问的时候,Dog的class对象会被加载。

2.在加载Dog的class的时候可能会发现其有基类,此时先暂停Dog的加载,转而去加载其基类。所以基类的static域比子类先初始化。

3.载入class文件之后,会创建一个该该类的class对象,所有关于静态初始化的动作会被执行,所以静态初始化只在Class对象首次加载时进行一次。

4.当使用new的时候,首先为Dog对象在堆上分配足够内存空间。这块内存控件会被清零,所有实例都被初始化成了默认值,包括基类。

5.执行所有字段定义处的初始化,从基类开始。

6.执行构造器。(在第一行会执行基类的构造器)

4.对象的销毁是按照创建的逆序来进行的。

5.final的方法和类都不允许覆盖和继承。private默认实现了final。

6.简述内部类的特点

7.形式参数可被视为local var

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值