zoukankan      html  css  js  c++  java
  • 2014-8-4阿里电话面试

    电话打来时,我正在愉快的煮着面条。看着电影(尼玛,真屌丝),看到一个杭州的号码。小心脏跳了一下,立即暂停电影跑出去接电话~



    废话不多说,以下就是面试经过(投的是client开发):

    1.自我介绍。(我去,全然没准备,非常久之前准备的所有忘了~)

    2.android怎样处理OOM?

    主要从图片压缩、缓存、载入方式方面去回答。

    3.listView怎样优化?

    主要从convertView缓存、ViewHolder等方面去回答。

    4.jpg和PNG的差别?(额。这个真心不知道。。。)

    从网上摘了一段例如以下:
    .JPEG――是一种较经常使用的有损压缩方案,经常使用来压缩存储批量图片(压缩比达20倍),我们在对应程序中以"jpg"存储时,会进一步询问使用哪档图像品质来压缩。而在图形程序中打开时会自己主动解压。JPEG所有名称为:Joint photographic exptrs group。虽然它是一种主流格式,在须要输出高质量图像时不使用JPG 而应选EPS格式或TIF格式,特别是在以JPG格式进行图形编辑时,不要经常进行保存操作。


             PNG―― 是网景公司开发的支持新一代WWW标准而制定的较为新型的图形格式,它综合了JPG和GIF格式的长处。支持24bit色彩(256*256*256),压缩不失真并支持透明背景和渐显图像的制作,所以称它为传统GIF的替代格式。在Web页面中。浏览器支持的格式有JPG 、GIF和PNG。


    5.堆和栈的差别?

    这个就不解释了~可是比較蛋疼的是我在讲堆的时候有益扯到新生代、老年代、回收算法,期望面试官多问这方面的问题,额,没想到问完这个立即

    换话题了。。。

    6.String的存储形式?

    没明确题目意思,先是回答String内部封装的是char数组,然后又提到new和直接赋值两种方式。也讲到了常量池。。。

    7.问能否够改变String的内容?

    我的回答是能够的,尽管String是final的,可是能够通过反射去改动引用的字符数组的内容~

    7.是否熟悉android的ClassLoader?

    不熟悉啊。。

    。我说比較熟悉java的ClassLoader,android应该类似。接着介绍了android的类载入器层次。BootstrapClassLooader、ExtensionClassloader,ApplicationClassLoader等~

    8.听到我说熟悉javaClassLoader。立刻让我解释java的双亲委派机制。

    之前有总结过~

    9.看到我项目有个涉及到了数据库,接下来问了一堆数据库的问题(尼玛,no zuo no die啊。这是我的弱项),什么怎样提高数据库查询速度?怎样优化sql语句?分组查询语句?等等。

    。这一块答的不好。

    10.面试官貌似看出来了,没有再问下去。。。。

    又開始问java基础了,这一块比較easy,问题也比較老套:

    hashtable和hashmap差别?多线程下怎样使用hashmap?hash原理,时间复杂度?线程和进程差别?线程的生命周期?

    11.然后情况直转而下。

    。。

    java的锁有哪几种?(多线程这块我还没复习到啊我想说。。。

    lock和synchronized差别?。。。

    12.面试官看我答的不太好(我预计是。

    。说话有点抖。。)。不问线程了。開始问java io,让我举几个io类,我貌似一口气说了一堆哈哈~

    当然没这么简单,接着问我是否熟悉NIO,哎,不熟悉啊,仅仅说了这个NIO是个new io也是个not block io,然后就没然后了。

    13.java到这就问完了。接下来问了一堆android相关的。比方子线程和ui通信的方式,service通信的方式及工作原理?handler机制?touch传递机制?

    整体答的一般。我自己不太惬意。这一块是我比較熟悉的,可是我表达能力不好,非常多心里知道的讲不出来。。好忧伤~

    14.我们都知道。activity有一个生命周期。。

    。(哈哈。难道让我说activity的生命周期嘛?)。。那你说说android为什么要设计一个生命周期呢??

    额,,,,这还真没考虑过。

    (更好的控制程序逻辑?更好地操作数据?更好地管理界面??该怎么答?谁能告诉我?)。。

    15.activity的生命周期是由谁控制的??

    框架层。

    窗体服务。

    这块了解的也不多,谁有好的资料求共享。。。

    16.以下是算法部分:(哎,准备的东西一点也没问到。

    。。)

    链表和数组的差别?二分查找算法?

    怎样进一步提高二分查找的效率?(这个有谁知道???)

    二分查找和跳跃表的差别??(我去。

    跳跃表没看。

    。)

    以下都是非技术问题了:

    17.以后希望在哪工作?(南京、无锡、杭州。。嘿嘿~)

    18.怎样学android的?(自学。。

    19.是否有关注过大牛的博客?

    20.怎样去阅读大牛博客。是否会自己思考?

    18.面试到此结束。问我有啥问题没?

    我当然说有啊。我问了他是咋学android的,他回答说:看源代码!

    总结:

    整体来说。回答的不咋地,一是紧张。二是还没准备好,三是我太菜!!!!

    通过这次电话面试,我的感觉是:

    1.还要提高自身的表达能力!

    2.充分准备真的非常有必要!

    3.不要紧张!

    技术上面还需提高的有:

    1.NIO、2.java并发、3.android设计原理、4.数据库 5.数据结构与算法








































  • 相关阅读:
    个人冲刺二(7)
    个人冲刺二(6)
    个人冲刺二(5)
    个人冲刺二(4)
    对称二叉树 · symmetric binary tree
    108 Convert Sorted Array to Binary Search Tree数组变成高度平衡的二叉树
    530.Minimum Absolute Difference in BST 二叉搜索树中的最小差的绝对值
    pp 集成工程师 mism师兄问一问
    17. Merge Two Binary Trees 融合二叉树
    270. Closest Binary Search Tree Value 二叉搜索树中,距离目标值最近的节点
  • 原文地址:https://www.cnblogs.com/gavanwanggw/p/7251787.html
Copyright © 2011-2022 走看看