Android开发知道的基本知识点总(一)

一:java基础面试知识点
    1.java中==和equals和hashCode的区别
       1)“==”运算符用来比较两个变量的值是否相等。也就是说,该运算符用于比较变量对应的内存中所存储的数值是否相同,要比较两个基本类型的数据或两个引用变量是否相等,只能使用“==”运算符。
       2)equals是Object类提供的方法之一。每一个Java类都集成自Object类,所以每一个对象都具有equals这个方法。Object类中定义的equals(Object)方法的情况下,equals(Object)与“==”运算符一样,比较的是引用。相比“==”运算符,equals(Object)方法的特殊之处就在于它可以被覆盖,所以可以通过覆盖的方法让它不是比较引用而是比较数据内容,例如String类的equals方法是用于比较两个独立对象的内容是否相同,即堆中的内容是否相同(简单概括:比较两个对象引用的比较,意思就是指向同一内存,地址则相等,否则不相等
         3)hashCode()方法是从Object类中继承过来的,它也用来鉴定两个对象是否相等。Object类中的hashCode()方法返回对象在内存中地址转换成的一个int值,所以如果没有重写hashCode()方法,任何对象的hashCode()方法都是不相等的。

    2.char,byte,short,int,long,float,double各占多少字节数
        char 16位 2个字节
 byte 8位 1个字节
short 16位 2个字节
int 32位 4个字节
long 64位 8个字节
float 32位 4个字节
double 64位 8个字节
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章