安卓开发(Java)面试经历

平安科技面试总结 好了,听说写面经,攒人品,是时候再写一波了。继上周之后,目前拿到的有3个offer,这里说说我在平安科技的面试过程吧。 首先简单介绍一下,平安科技是世界500强中国平安集团旗下的全资子公司,主要向集团及其下属子公司提供IT服务,总部在深圳,上海、成都设有分公司,建立深圳上海两大数据中心,实现全国数据集中。平安科技在互联网金融行业处于全国顶尖位置,想做互联网,又想做金融,平安科技确实是很不 阅读详情

除了问项目经历,一些技术性的问题如下:

内存回收机制(Garbage Collection,GC)

1. java的内存

内容来源

  • 堆 (是gc的主要区域) 线程共享,主要是用于分配实例对象和数组
  • 栈 线程私有,它的生命周期和线程相同,又分成 虚拟机栈和本地方法栈,只有它会报 StackOverFlowError,栈深度超标
  • 方法区 线程共享 用于储存被虚拟机加载的类的信息,静态变量 常量和编译后的.class字节码
  • 程序计数器 线程私有,线程之间不相互影响,独立存取;

以上部分,线程私有是不会发生gc.并且他们是随线程生随线程灭,即程序计数器 本地方法栈和虚拟机栈

2.GC回收机制–判断是否可以gc

引用计数算法
原理:通过一个计数器对对象进行计数,对象被引用时+1,引用失效时-1;当计数为0时则说明可以被回收;
缺点:很难解决对象的相互循环引用问题
可达性分析算法
Java虚拟机所采用的算法;
原理:通过一些列称为“GC Roots”的对象作为起始点,从这些节点开始向下搜索,搜索所走过的路径称为引用链,当一个对象到GC Roots没有任何引用链相连时,则证明此对象是不可用的。
那么哪些对象可以被称为gc roots呢—-虚拟机栈(栈中的本地变量列表)/方法区静态属性/方法区常量引用/本地方法栈中JNI 所引用的的对象都是可以作为 gc roots的

3.GC回收机制–如何回收

标记清除算法
清除算法分成2个阶段–标记和清除; 标记阶段对所有存活的阶段进行标记,标记完成后,再扫描整个空间未标记对象,直接回收不存活的对象.
优点:大多数情况下比较高效,缺点是会造成内存碎片,碎片太多导致后面过程中对大内存的分配无足够空间时而提前猝发一次垃圾回收动作;
复制算法
将可用内存将容量划分成大小相等的2块,每次清理时将其中A内存还存活的对象复制到B内存里面,然后再把A中清理掉;
优点高效且并不产生碎片,缺点牺牲了一半的内存为代价
适用存活对象少,回收对象多
标记整理算法
该算法标记阶段和标记清除算法一样,完成标记后它不是直接清理可回收对象,而是将存活对象都向一端移动最后清理掉端边界意外的内存;
适用于存活对象多,回收对象少的情况
分代收集算法
整合了复制算法和标记整理算法,根据新生代和老年代的不同特性采取上面的不同算法
新生代 生命周期短,每次回收时都有大量垃圾对象需要回收 复制算法
老年代 每次只有少量的对象需要回收 标记整理算法

Tcp与udp

内容来源
TCP与UDP基本区别
1.基于连接与无连接
2.TCP要求系统资源较多,UDP较少;
3.UDP程序结构较简单
4.流模式(TCP)与数据报模式(UDP);
5.TCP保证数据正确性,UDP可能丢包
6.TCP保证数据顺序,UDP不保证
  
UDP应用场景:
1.面向数据报方式
2.网络数据大多为短消息
3.拥有大量Client
4.对数据安全性无特殊要求
5.网络负担非常重,但对响应速度要求高

http与https的区别

HTTP协议以明文方式发送内容,不提供任何方式的数据加密
HTTPS存在不同于HTTP的默认端口及一个加密/身份验证层(在HTTP与TCP之间)
HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。

感觉这里要使用过https编程才会有更深的理解

手写二叉树的遍历

写完面试官就看了一眼….应该没什么问题

override与overload的区别

Override是重写:方法名称、参数个数,类型,顺序,返回值类型都是必须和父类方法一致的。它的关系是父子关系
Overload是重载:方法名称不变,其余的都是可以变更的。它的关系是同一个类,同一个方法名,不同的方法参数或返回值。
备注:它们都是是Java多态性的不同表现

文件系统与数据库的区别

文件系统和数据库系统之间的区别。
(1)文件系统用文件将数据长期保存在外存上,数据库系统用数据库统一存储数据;
(2)文件系统中的程序和数据有一定的联系,数据库系统中的程序和数据分离;
(3)文件系统用操作系统中的存取方法对数据进行管理,数据库系统用DBMS统一管理和控制数据;
(4)文件系统实现以文件为单位的数据共享,数据库系统实现以记录和字段为单位的数据共享。

问项目的时候即兴问的一个问题。。。还是没答上来

其实也很久没有打java代码,用的时候也没有去思考这些问题,感觉要提前做好充分准备

面试于2018/4/14日上午

java开发安卓软件 安卓平台下软件开发基础教程,从0开始教你如何在安卓下做开发 立即下载

相关推荐

java_安卓面试题

整理了各大公司经典的java和安卓的面试题

Android 面试(Java 篇)

好记性不如烂笔头,这是近半年根据北京一些中小型企业安卓招聘需求整理的 Java 面试题,未完待续,如有不足欢迎留言指教。

X_sunmmer的博客 2325

Java基础+Android面试题

Java基础+Android面试题Java基础+Android面试题Java基础+Android面试题

2024年最新Android大厂面试题来袭,阿里技术专家

最后为了帮助大家深刻理解Android相关知识点的原理以及面试相关知识,这里放上相关的我搜集整理的14套腾讯、字节跳动、阿里、百度等2021面试真题解析,我把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包知识脉络 + 诸多细节。网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门。

2401_83641314的博客 1100

LangChain开发避坑指南:为什么Pylance总提示‘无法解析导入‘?实测7种修复方案

本文深入解析了在VS Code中使用LangChain开发时,Pylance频繁提示‘无法解析导入’的根本原因——Python解释器与语言服务器的环境路径不一致。文章提供了从基础排查到深度配置的7种实测修复方案,包括切换解释器、配置extraPaths、使用pyrightconfig.json等,旨在帮助开发者彻底解决此问题,提升AI应用开发效率。

weixin_28826521的博客 444

VASP能带计算避坑指南:从CHGCAR读取失败到成功解决的全过程

本文深度解析VASP能带计算中常见的“CHGCAR读取失败”报错,并提供从静态自洽到非自洽计算的全流程避坑指南。核心解决方案包括使用CONTCAR替代POSCAR、调整SYMPREC参数以处理对称性判定问题,并推荐利用vaspkit工具自动化生成输入文件,确保计算流程稳健高效。

weixin_29245767的博客 770

如何使用Java开发Android应用?

安装Android Studio:从官方网站(https://developer.android.com/studio)下载并安装Android Studio。构建和发布应用:完成应用程序的开发和测试后,可以使用Android Studio构建APK(Android Package)文件。要使用Java开发Android应用程序,你可以使用Android Studio集成开发环境(IDE)和Android SDK。提供应用程序的名称,选择适当的目标Android版本,并选择要使用的模板。

2301_78263023的博客 5875

李宏毅机器学习笔记第17周_概述领域自适应(Domain Adaptation)

Domain Adaptation

peaunt1的博客 1102

常见Android面试题及答案(详细整理)

对于Android的学习,很多⼈可能学了之后,不知道⾃⼰处于哪个阶段,也不到究竟要学到哪个程度,验证⾃⼰学得如何最好的⾯试,就是尝试去⾯试,⽽⾯试⽆⾮就是问你⼀些⾯试题。所以呢,小编整理了这些 Android ⾯试题,从 Java 基础,并发,虚拟机到Android Framework,开源框架,性能优化,并且附带了详细的答案,⽆论是想⾯试还是想看看⾃⼰学得如何,那么这份⾯试题,都值得你去学习。答: 如下图所示。

Android 开发架构 1万+

各种AI的调试日记——辅助工作篇

记录使用各种AI(语言大模型)的心得和总结

m0_73056986的博客 1390

从光斑图到锤形优化:一次搞定Zemax双胶合透镜的像散与场曲问题

本文详细解析了Zemax双胶合透镜设计中像散与场曲问题的诊断与优化方法。从光斑图分析到锤形优化技巧,提供了完整的光学设计实战指南,帮助设计师快速定位问题并有效改善系统性能,特别适合光学设计工程师和Zemax使用者参考。

weixin_27134495的博客 231

Android面试(Java部分)

5.1,抽象是什么:将一类对象的共同特征总结出来,并且构造成1类事物的过程,只关注有哪些数据和行为,不关注其具体细节。作用是提供子类的通用性,创建模板,减少代码编写,代码更规范。实现抽象的2种方式:抽象类和接口。5.2,抽象类:必须用abstract修饰,抽象方法只有声明,不会实现。5.3,接口:用interface修饰(1)单例模式:对象创建模式,一个类只产生一个实例。可以节约多次创建对象的时间,减少GC的压力。饿汉模式:先创建好对象,但是无法对实例做延时加载。

2401_84689394的博客 930

在 MATLAB/Simulink 中构建一个卫星间激光通信链路的完整仿真系统

摘要: 本文通过Simulink详细演示了卫星间激光通信系统的建模过程,重点分析其在10Gbps高速率、2000km距离下的性能。系统设计涵盖PAM-4调制、自由空间信道建模(路径损耗、指向误差、多普勒效应)、APD探测及链路预算计算,并给出典型场景下18.5dB SNR、1e-9误码率的仿真结果。针对激光通信的μrad级指向精度挑战,提出AI辅助跟踪、混合RF/激光等优化策略,为未来太空高速组网提供可扩展的仿真框架。所需工具箱包括Communications Toolbox和Aerospace Toolb

xiaoheshang_123的博客 381

2020安卓开发面试总结

2020安卓面试总结基础知识Java基础Android基础网络基础Android常用框架源码1,ViewModel和LiveData2,Kotlin3,LeakCanary的实现原理4,RxJava5,EventBus6,fresco和glide项目经历1,你觉得最有难度的项目,最成功的项目2,你做过什么性能优化相关的工作3,遇到问题的时候,怎么解决 今年因为公司的一些变动,深思熟虑后决定出来重新找工作。刚开始以为找工作会一帆风顺,也没多做准备,结果发现现实狠狠的给了我一耳光。所以,找工作之前还是要把面试相

Programmer Training 519

【固态变压器(SST)全维度解析】发展历史、技术、玩家、挑战与数据中心趋势

SST正处于技术突破向规模化商用的关键过渡期,随着SiC/GaN器件降价、标准完善、可靠性数据积累,其在数据中心的渗透率将快速提升。短期(2025 - 2027年)以示范项目为主,中长期(2030年后)有望成为超大规模智算中心的主流供电方案。

昔时扬尘处 2127

十三种通信接口芯片——《器件手册--通信接口芯片》

通信接口芯片用于实现差分信号的传输,具有抗干扰能力强、传输距离远等优点。RS485支持多点通信,可连接多个收发器,而RS422支持单向多点通信。广泛应用于工业自动化、过程控制、仪器仪表、楼宇自动化(如暖通空调、保安系统)、电机控制等领域。ST3485EBDRTP8485ESR用于实现串行通信,支持点对点通信,传输距离相对较短,数据速率较低。常用于计算机与外设(如打印机、调制解调器)之间的通信。如芯力特的SIT3232,可作为ST3232的替代品。

XU157303764的博客 4271

嵌入式开发面试题及答案详解,2024我的坑爹Android面试经历,你还在把Java当成Android官方开发语言吗

1 做好自我介绍和项目总结,把握你发言的主动权2 搞清楚简历上的技术点,兵来将挡水来土掩3 注意分点答题,思路清晰,也更容易讲清楚原理。4 压力面下保持冷静,不要回怼面试官5 HR面试注意常用技巧,可以提前准备。

2301_79098886的博客 737

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

android开发强化实战,疯狂涨知识

自我介绍一下,小编13年北京科技大学毕业,曾经在字节跳动待过,也去过vivo、小米等大厂,18年进入华为一直到现在。小编这些年深知大多数初中级Android工程师,想要提升自己,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。因此我收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担,能在岗位上再创辉煌,步步高升!!。

2401_84901248的博客 667

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

android面试题2020!斗鱼直播Android开发二面被刷,Android校招面试指南_安卓直播开发面试

都说三年是程序员的一个坎,能否晋升或者提高自己的核心竞争力,这几年就十分关键。技术发展的这么快,从哪些方面开始学习,才能达到高级工程师水平,最后进阶到Android架构师/技术专家?我总结了这5大块;我搜集整理过这几年阿里,以及腾讯,字节跳动,华为,小米等公司的面试题,把面试的要求和技术点梳理成一份大而全的“Android架构师”面试PDF(实际上比预期多花了不少精力),包含知识脉络+分支细节。Java语言与原理;大厂,小厂。Android面试先看你熟不熟悉Java语言高级UI与自定义view。

2501_90256460的博客 256

安卓开发实战!一位Android大牛的BAT面试心得与经验总结,移动架构师成长路线

导语 2020年是转折的一年,2021年算是收获的一年,趁着金三银四开始找工作。先分享一下offer的情况 阿里高德(offer) 爱奇艺(offer) 腾讯视频(offer) 小米(被拒) 今日头条(被拒) 在面试的过程中我深深的感受到,对于一个优秀的安卓开发来说,首先摆在第一位的还是他/她作为一个软件工程师的基本素养。无论你是做前端还是后端,最后定义你的优秀程度的还是作为软件工程师的基本素养,学习能力和编程能力,还有设计能力。 很多人准备面试的时候,大多数就会这样的,打开百度,输入 “Android

CHAMPION8888的博客 306

Android面试总结

/**     *  2014年面试的公司及一些面试题     *     *  2015年2月15 回忆整理     *     *  按先后顺序排     * */      1)星干线: 做智能手表的,第一款产品是找学校的人做的,组建自己的开发团队做第二款。                        我去的时候还没有安卓的面试题,直接拿的嵌入式的面试题目

美丽心情 798

洞悉MySQL底层架构,Android岗面试

上周喜提oppo面试offer,本人在深圳,有4年多的Android项目经验,普通本科学历。面试是相互相在,OPPO给我的印象确实如其核心价值观所说:本分。一面、部长面和HR面都蛮顺利(一千个人可能要了一百左右,但竞争没有想象中激烈,说白了提高自己的核心竞争力才是硬道理)

m0_61331573的博客 1017

Android老鸟,奇妙陪跑,面试了字节跳动,才知道其难度究竟如何

莫名其妙的投了字节跳动的安卓开发,面试那天还在外面吃饭,没想就这到还收到了面试邀请,心里想着就是去陪跑,也没怎么准备以下大概是凉经,没想到我成功了: 一面(~45min) 介绍项目,讲述一下实习的工作内容和感想(~10min) 什么是内存泄漏,Android里有哪些内存泄漏的场景,原因是什么 JVM的GC过程,GC的算法都有哪些 进程和线程的概念,Android里怎样实现多线程?(Thread Handler AsyncTask IntentService等等) Handler的原理和使用 Han.

老皮的博客 365

Android 面试官:“面试季面试了近百名开发者,符合要求的不到一半 ”

因为任务基础扎实了,面向对象的思想有了,开发Android是很简单的事情,即使有什么不懂,也很快会学会。arraylist怎么实现的,map怎么实现的,hashmap和arraymap适用场景,volatile和synchronized有什么区别,多线程如何同步。可能说的唠叨了点,我想表达的是,一个安卓开发的自我修养并不应该局限于应用开发。第五,网络通信这一块,tcp/udp基础协议还是要理解吧,tcp为什么安全可靠,怎么做到的,HTTP协议是怎么回事,只会用OKHTTP是不行的啊朋友。

2401_89693804的博客 443

【大牛疯狂教学】9次Android面试经验总结,全网最新

前言 刚从阿里面试回来,想和大家分享一些我的面试经验,以及面试题目。 这篇文章将会更加聚焦在面试前需要看哪些资料,一些面试技巧以及一些这次的面试考题。 安卓跳槽需要复习的知识 在介绍面试考察内容前,先来看看我认为的“中级安卓”需要掌握的知识点,这些是结合一些面经、自己实际面试以及请教前辈总结而来的,主要包括两部分: 基础知识 进阶知识 面试中级及以下岗位时,在电话面试、一面、或者你简历没有突出亮点时,一般都会先问基础,目的是确定你基本功扎不扎实。 如果基础知识有太多不会的就危险了,必须好好准备,这是躲不

m0_56067448的博客 190

相当走心!Android 工程师跳槽面试经验分享

非也,每次跳槽的成本其实很大,除去面试来回的时间不说,新旧环境的适应、业务的熟悉、代码的掌握,都需要成本,如果两次跳槽间隔太短,其实时间都花在了适应新环境上,真正学习、沉淀的内容不会太多,尤其是刚开始工作的毕业生,更忌讳这样子。拿技能水平来说,根据做过项目的类型,确定自己当前擅长的点,比如你做的是电商应用,那可能就擅长混合开发、自定义 View;除了代码,人际关系也需要沉淀,在这个公司待了那么久,看到了一些同事的优秀品质,学习、借鉴他们也需要一定的时间,如果忙着换工作,可能就失去了和同事深入交流的机会。

2401_84048149的博客 636
上一篇: 内存泄漏与内存溢出
下一篇: 软件测试——黑盒白盒测试的方法
wenkun97
博客等级 码龄10年 15粉丝 139原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值