美文网首页
android面试题和答案1

android面试题和答案1

作者: 物语时间 | 来源:发表于2019-02-21 17:28 被阅读30次

    主要分为以下几部分:

    (1)java面试题
    (2)Android面试题
    (3)混合开发面试题
    (4)高端技术面试题
    (5)非技术性问题&HR问题汇总

    一、java面试题
    熟练掌握java是很关键的,大公司不仅仅要求你会使用几个api,更多的是要你熟悉源码实现原理,甚至要你知道有哪些不足,怎么改进,还有一些java有关的一些算法,设计模式等等。
    (一) java基础面试知识点

    java中==和equals和hashCode的区别
    (1)==
    1.基本数据类型
    byte,short,char,int,long,float,double,boolean 他们之间的比较,应用双等号(==),比较的是他们的值。
    2.引用类型(类、接口、数组)
    当他们用(==)进行比较的时候,比较的是他们在内存中的存放地址,所以,除非是同一个new出来的对象,他们的比较后的结果为true,否则比较后结果为false。
    对象是放在堆中的,栈中存放的是对象的引用(地址)。由此可见'=='是对栈中的值进行比较的。如果要比较堆中对象的内容是否相同,那么就要重写equals方法了。
    (2)equals
    1、默认情况(没有覆盖equals方法)下equals方法都是调用Object类的equals方法,而Object的equals方法主要用于判断对象的内存地址引用是不是同一个地址(是不是同一个对象)。定义的equals与==是等效的
    2 、要是类中覆盖了equals方法,那么就要根据具体的代码来确定equals方法的作用了,覆盖后一般都是通过对象的内容是否相等来判断对象是否相等。
    (3)hashCode
    配合散列的集合 ,元素不可重复。元素太多的用equals判断效率不高,先判断hash值 ,hash相等在判断equals
    int、char、long各占多少字节数
    int与integer的区别
    1.int是基本的数据类型,直接存数值; 2.Integer是int的封装类;integer是对象,用一个引用指向这个对象
    谈谈对java多态的理解
    多态的实现的必要条件:继承,重写,父类引用指向子类对象
    a. 面向对象的三大特性:封装、继承、多态。从一定角度来看,封装和继承几乎都是为多态而准备的。这是我们最后一个概念,也是最重要的知识点。
    b. 多态的定义:指允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式。(发送消息就是函数调用)
    c. 实现多态的技术称为:动态绑定(dynamic binding),是指在执行期间判断所引用对象的实际类型,根据其实际的类型调用其相应的方法。
    d. 多态的作用:消除类型之间的耦合关系。
    String、StringBuffer、StringBuilder区别
    String 字符串常量
    StringBuffer 字符串变量(线程安全)
    StringBuilder 字符串变量(非线程安全)
    什么是内部类?内部类的作用
    抽象类和接口区别
    抽象类的意义
    抽象类与接口的应用场景
    抽象类是否可以没有方法和属性?
    接口的意义
    泛型中extends和super的区别
    父类的静态方法能否被子类重写
    进程和线程的区别
    final,finally,finalize的区别
    序列化的方式
    Serializable 和Parcelable 的区别
    静态属性和静态方法是否可以被继承?是否可以被重写?以及原因?
    静态内部类的设计意图
    成员内部类、静态内部类、局部内部类和匿名内部类的理解,以及项目中的应用
    谈谈对kotlin的理解
    闭包和局部内部类的区别
    string 转换成 integer的方式及原理

    (二) java深入源码级的面试题(有难度)

    哪些情况下的对象会被垃圾回收机制处理掉?
    讲一下常见编码方式?
    utf-8编码中的中文占几个字节;int型几个字节?
    静态代理和动态代理的区别,什么场景使用?
    Java的异常体系
    谈谈你对解析与分派的认识。
    修改对象A的equals方法的签名,那么使用HashMap存放这个对象实例的时候,会调用哪个equals方法?
    Java中实现多态的机制是什么?
    如何将一个Java对象序列化到文件里?
    说说你对Java反射的理解
    说说你对Java注解的理解
    说说你对依赖注入的理解
    说一下泛型原理,并举例说明
    Java中String的了解
    String为什么要设计成不可变的?
    Object类的equal和hashCode方法重写,为什么?

    相关文章

      网友评论

          本文标题:android面试题和答案1

          本文链接:https://www.haomeiwen.com/subject/ytkryqtx.html