Android面试题详解与解答

需积分: 9 4 下载量 158 浏览量 更新于2024-09-13 收藏 72KB DOC 举报
"这篇资源包含了Android面试的相关题目和答案,主要涵盖Java基础知识,包括流的分类、运算符、构造方法、条件判断、字符串占用内存、静态变量以及内存回收等概念,适合准备Android面试的人员复习巩固知识。" 面试题解析: 1. Java.IO流的分类:Java.IO流按照功能可以分为节点流和处理流。节点流直接从数据源或目的地读写数据,如FileInputStream和FileOutputStream;处理流是对已有流的增强或过滤,如BufferedInputStream和BufferedReader,它们用于对读取的内容进行处理后再输出。 2. 代码执行结果:当计算整数除法时,100%3的结果是1,而100%3.0会进行浮点数除法,结果是1.0。因此,输出是1,1.0,选项B是正确答案。 3. 构造方法与继承:子类不覆盖父类的无参构造方法,而是隐式调用。子类可以通过super关键字调用父类的构造方法。选项D错误,因为子类有无参构造方法并不意味着它覆盖了父类的无参构造方法,而是继承并可以调用。 4. 条件判断:该程序会检查x是否等于y,由于x=3,y=1,它们不相等,所以会执行else分支,输出"Equal",选项B正确。 5. 字符串内存占用:Java中,字符串"学Java"包含6个汉字,每个汉字占用两个字节,加上结束符'\0',总共占用12个字节。但问题可能仅考虑实际字符,所以答案可能是6个字节(不包含'\0'),但这不符合Java内存分配的实际情况,因此没有给出的选项中最接近的是10个字节,尽管这也不完全准确。 6. 静态变量:静态变量属于类,而非实例。所以在main方法中直接打印未初始化的静态变量i会输出0,选项D是正确答案。 7. 内存回收:Java的垃圾收集器自动进行内存回收,程序员无需手动释放内存。因此,选项A错误,选项B表示null值,C表示1是错误的理解,选项D正确,表明内存回收是由系统自动进行的,初始值为0。 以上解析涵盖了面试题目的主要知识点,对于准备Android面试的开发者来说,理解和掌握这些基础Java概念非常重要,因为它们不仅在Java编程中起着核心作用,也是Android开发的基础。通过这样的练习,可以帮助求职者检验自己的知识水平,并找出需要进一步学习和强化的领域。