Android实习生或初级工程师2019年面试题归纳

Java类型题目:

  1. 给定一个一维整型数组int[] arr,设计一个函数,同时返回其中的最小值和最大值。
  2. 写一个函数,从一个字符串中剔除连续的字符,只留一个。
  3. 有一个一维整型数组int[] data,保存的是一张宽为w,高为h的图片像素数据,请写一个函数,将该图片所有的alpha(透明度)调整为原来的一半,函数定义:void doAlphaHalf(int[] data, int w, int h)。
  4. Java语言中的基本数据类型有哪几种?每种类型占用的内存大小是多少字节?
  5. 如何以最效率的方式计算2乘以128?
  6. swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?
  7. HashMap和Hashtable有什么区别?
  8. 介绍下Java注解和反射原理

 

Android类型题目:

  1. Android有几种布局?
  2. layout_gravity和gravity的区别?
  3. 描述一下Android的四大组件。
  4. 请描述一下Activty生命周期。
  5. OnRestart()和OnResume()的区别。
  6. Activity和Fragment的生命周期?
  7. 怎么理解Activity和Fragment(碎片)的关系?
  8. 在manifest中可以声明哪几种Activity的启动模式,请分别列举并简单描述各自的特点。
  9. Activity的缓存方法是怎么样的?
  10. 简单描述下,当Activity在后台销毁的时候,如何保存和恢复状态和数据。
  11. 在程序配置改变的时候,如切换横竖屏,会导致Activity销毁,此时如何保存和恢复大量数据(如几张图片)。
  12. Activity中有个EditText,里面有一段文本,如何保证在Activity销毁和恢复的时候,EditText的状态自动保存,需要对EditText做哪些设置?
  13. intent可以传递哪些数据?如果是对象,怎么传递?
  14. 使用服务发送一个广播或者使用服务接收一个广播你会怎么做?(有点忘记了因为这是和老板面谈的时候问的)
  15. 列举一些保证Service不被后台销毁的方式。
  16. 你了解handler吗?Handler的机制是什么?
  17. 介绍一下Handler机制,并说明Looper,Handler,MessageQueue的关系。
  18. 只能在UI线程里面更新界面吗?
  19. Android的子线程更新UI的方式有几种?
  20. 异步处理有几种方式?
  21. 列举你所知道的Android多线程之间的通讯的方式。
  22. 描述一下跨进程通讯有哪几种方式?每种方式的特点是什么?
  23. Android的存储形式有几种?
  24. 本地存储的方式有哪些?你用过哪些?
  25. SQLite的基础操作?
  26. 有没有用过自定义View?需要哪些步骤?
  27. 说明View类中onMeasure(),onDraw(),draw()的功能。
  28. ListView如何提高其效率?
  29. ListView的内容覆盖的坑你是这么解决的?
  30. 简单描述下Android事件分发机制。
  31. View,sufaceView,GLSurfaceView有什么区别?
  32. 简述如何封装一个HTTP网络请求库?
  33. 什么是ANR?如何避免它?什么情况会导致Forece Close?如何避免?
  34. 项目中遇到过OOM吗?为什么会产生OOM?怎么解决?
  35. 产生安卓内存泄漏的原因是什么?怎么处理?
  36. 内存溢出和内存泄漏有什么区别?何时会产生内存泄漏?内存优化有哪些方法?
  37. 简述怎么优化app体验(例如网络请求,数据缓存,图片显示,全局框架设计)
  38. 简单描述下AIDL的应用场景。
  39. 简单列举一些用到过的设计模式。详细描述单例模式实现的几种方式。

 

SQL类型题目:

一、学生成绩表(stuscore):

姓名:name课程:subject分数:score学号:stuid
张三数学891
张三语文801
张三英语701
李四数学902
李四语文702
李四英语802
  1. 计算每个人的总成绩并排名(要求显示字段:姓名,总成绩)
  2. 计算每个人的平均成绩(要求显示字段:学号,姓名,平均成绩)
  3. 计算每个人单科的最高成绩(要求显示字段:学号,姓名,课程,最高成绩)
  4. 列出各门课程的平均成绩(要求显示字段:课程,平均成绩)

二、表有三个字段:班级,姓名,性别,写SQL统计出每个班分别有男女生各有多少名?

 

其他:

1.列出你在开发过程中常用的软件及其功能

2.做完机题后老板说想考验我对UI设计的一些理解,要严格按照客户的UI设计图的比例,可能每一个像素都要严格按照客户的比例来做。

3.你对自己未来的一个规划还有你自学的方法,然后我回答是一两年类成为中高级这样的一个水准,然后自己给自己挖了个坑,接着问,那你对中高级的定义是什么?中高级工程师的一个水准你觉得是怎样的。

4.你觉得你对Android的掌握是怎样的?

 

选择题:

在android中使用Menu时可能需要重写的方法有(   )(多选)

        A、onCreateOptionsMenu()

        B、onCreateMenu()

        C、onOptionsItemSelected()

        D、onItemSelected()

 

编程问答题:

public class Test2 {

    static {
        str = "2";
    }

    public static String str = "1";

    public static void main(String[] args) {
        System.out.println(Test2.str);
    }

}

上面程序的打印结果是多少?

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值