Android 面试问答

目录

  • 数据结构和算法
  • java核心知识
  • Android核心知识
  • 架构
  • 设计相关问题
  • 相关工具和技术
  • Android 测试驱动开发
  • 其他

数据结构和算法

******关于此类问题的难易程度完全取决于你所面试的单位 *****

  • 数组
  • 链表
  • 双向链表
  • 队列
  • 优先队列
  • 动态规划(Dynamic Programming)
  • 字符串处理(string Manipulation)
  • 二叉树(Binary Tree)
  • 二叉搜索树(Binary Search Tree)
  • 排序算法(Sorting Algorithms)
  • Hash Table & Hash Map
  • 广度优先搜索算法(breadth First Search, BFS)
  • 深度优先搜索(Depth First Search)
  • 贪心算法(greedy algorithm)

Java核心知识

  • 解释面向对象的概念
  • 抽象类和接口有什么不同?
  • 什么是序列化(serialization),你是怎么实现的?
  • 什么是单例类?
  • 什么是匿名类(anonymous classes)?
  • 处理一个string类型的数据时,== 和 equals 有什么区别?
  • hashcode() 和 equals() 是用来做什么的?
  • 什么是内存泄漏?Java是如何处理这个问题的?
  • 什么是垃圾回收机制?它是如何工作的?
  • Java中的类型转换
  • 方法重写和方法重载有什么区别?
  • 你知道哪些访问修饰符(the access modifiers)?他们各自的作用是什么?
  • 接口可以继承另一个接口吗?
  • Java中 static关键字是什么含义
  • Java中静态方法可以被重写吗?
  • 什么是多态(Polymorphism)?什么是继承(Inheritance)?
  • Integer和int有什么区别?
  • 详述下Java中对象的引用和值传递(objects get passed by reference)
  • 什么是 ThreadPoolExecutor?
  • 局部变量(local variables),成员变量(class variables),实例变量(instance variables)有什么不同?
  • 什么是反射?
  • Java中的弱引用,软引用,虚引用(strong, soft and weak references)是什么?
  • 什么是依赖注入(dependency injection)?能说出几个相关的库么?你有没有用过?
  • synchronized关键字是什么意思?
  • 为什么说String类型的变量是不可修改的(immutable)?
  • transientvolatile修饰符是什么?
  • 一个对象的实例化(instantiation)和初始化(initialization)有什么区别
  • 静态代码块(static block)什么时候执行?
  • 解释下Java中的泛型(Generics)
  • StringBufferStringBuilder有什么区别?
  • 什么是自动拆装箱(Autoboxing and Unboxing)?
  • 什么是设计模式(design patterns)?

Android 核心知识

未完待续。。。

Android 面试问答的更多相关文章

  1. 百度的android面试总结分析

    今天就是今天上午10点,我接到了百度的电话面试,当然提前和我说了,我的拖延症是有多强烈,以至于我没怎么准备,当然我也想着看看自己的真实水平,在此检讨一下!!!!!!!!!!!!!!!!!!!!!!!! ...

  2. Android面试一天一题(1Day)

    写在前面 该博客思路源于在简书看到goeasyway博主写的Android面试一天一题系列,无copy之意,仅为让自己总结知识点,成长一点点.先感谢各位大神的无私分享~! 关于题目,大部分则出自And ...

  3. JAVA多线程和并发基础面试问答(转载)

    JAVA多线程和并发基础面试问答 原文链接:http://ifeve.com/java-multi-threading-concurrency-interview-questions-with-ans ...

  4. Android面试总结 (转)

    1. 下列哪些语句关于内存回收的说明是正确的? (b) A. 程序员必须创建一个线程来释放内存 B. 内存回收程序负责释放无用内存 C. 内存回收程序允许程序员直接释放内存 D. 内存回收程序可以在指 ...

  5. 【Android面试】Android面试题集锦 (陆续更新)(最新2012-6-18) eoe上看到的

    ===============eoeAndroid社区推荐:======================= 1.Android开发新浪面试题[开发者必看哦]下载地址 http://www.eoeand ...

  6. [转] JAVA多线程和并发基础面试问答

    JAVA多线程和并发基础面试问答 原文链接:http://ifeve.com/java-multi-threading-concurrency-interview-questions-with-ans ...

  7. JAVA多线程和并发基础面试问答

    转载: JAVA多线程和并发基础面试问答 多线程和并发问题是Java技术面试中面试官比较喜欢问的问题之一.在这里,从面试的角度列出了大部分重要的问题,但是你仍然应该牢固的掌握Java多线程基础知识来对 ...

  8. 【多线程】JAVA多线程和并发基础面试问答(转载)

    JAVA多线程和并发基础面试问答 原文链接:http://ifeve.com/java-multi-threading-concurrency-interview-questions-with-ans ...

  9. 28个MongoDB NoSQL数据库的面试问答

    MongoDB是目前最好的面向文档的免费开源NoSQL数据库.如果你正准备参加MongoDB NoSQL数据库的技术面试,你最好看看下面的MongoDB NoSQL面试问答.这些MongoDB NoS ...

随机推荐

  1. laravel 路由分組

    laravel 路由分組 Route::group(['prefix' => 'admin'], function () { $namespacePrefix="\\App\\Http ...

  2. java fail-fast和fail-safe

    快速失败(fail—fast) 在用迭代器遍历一个集合对象时,如果遍历过程中对集合对象的内容进行了修改(如增加.删除等),则会抛出Concurrent Modification Exception. ...

  3. nginx 代理flask应用的uwsgi配置

    socket代理配置: 关于uwsgi的用法,请自行百度,这里只针对socket文件和端口的不同,进行单一的记录. 这种方式启动的flask应用,由于是通过socket与nginx通信的,所以必须制定 ...

  4. Linux系统挂载新磁盘

    执行df -h 查看已挂载磁盘 未能找到挂载磁盘 1)使用fdisk -l命令查看主机上的硬盘 红圈标志为后挂载的磁盘未能挂载 2)使用mkfs.ext4命令把硬盘格式化: mkfs.ext4 /de ...

  5. SpringSecurity-UsernamePasswordAuthenticationFilter的作用

    UsernamePasswordAuthenticationFilter应该是我们最关注的Filter,因为它实现了我们最常用的基于用户名和密码的认证逻辑. 先看一下一个常用的form-login配置 ...

  6. Sql server 编写99乘法表

    Sql 组织编写语句 declare @one int,@tow int,@str varchar(100),@num intselect @one=1while(@one<=9)beginse ...

  7. python3 json.dump乱码问题

    json.dumps(obj, ensure_ascii=False) ensure_ascii = True,会忽略掉non-ascii字符

  8. leetcode3

    public class Solution { public int LengthOfLongestSubstring(string s) { var dic = new Dictionary< ...

  9. C# String 与 StringBuilder

    String 字符串不可变性,每次为字符串进行增删或重写赋值会销毁原来的字符串,重新开辟内存空间,因此是非常消耗资源的 字符串可以看做是 char 数组,因此可以用 foreach 对其进行遍历,或者 ...

  10. netbeans 正则替换

    单引号替换为双引号: tablename1('xhw_aa')  tablename2('xhw_bb') tablename3('xhw_cc') tablename4('xhw_dd')   (t ...