
Java面试题
本栏目会讲本人遇到的面试题以及网络上搜集到的面试题进行整合梳理,一方面作为本人的学习笔记,另一方面供网友查看交流。
在下不当人
成长是一条漫长的路。
展开
-
==与equals的区别
==:它是判断两个对象的地址是否相等。也是说这两个对象是不是同一个对象。基本数据类型==比较的是值,引用数据类型==比较的是内存的地址。equals:Object的equals等价与==,下面看一下源码既然如此,那为什么面试题会问这个问题呢?是因为有部分类重写了equals方法。例如String类例如File类例如Date类等等以上类都继承了Object的equals方法,并进行了重写,所以以上类的equals方法的功能都是根据重写方法中内容来决定的,..原创 2021-11-26 11:25:12 · 140 阅读 · 0 评论 -
String,StringBuffer,StringBuilder的区别?
String先看一下String的源码String 类中使用 final 关键字字符数组保存字符串,所以 String 对象是不可变的,他是字符串常量。String s1 = "aaa"; //生成aaa字符串常量String s2 = "bbb"; //生成bbb字符串常量s1 = s1+s2; //生成aaabbb字符串常量,s1的地址指向aaabbb字符串常量地址String s3 = "aaa"+"ccc"; //直接生成aaaccc字符串,不会在生成aaa和ccc字符串St原创 2021-11-26 10:56:53 · 345 阅读 · 0 评论 -
重载和重写的区别
重载:重载是发生在同一个类中,方法名称相同,方法参数不同。在调用时,程序会根据方法的传参找到相对应的方法。public void change(Integer a){ a+=1; }public void change(Integer a,Integer b){ a=b+1; }这里返回值类型和访问修饰符不同不是重载。重载只和参数相关。//编译器会报错public void change(Integer a){ a+=1;原创 2021-11-26 10:09:26 · 202 阅读 · 0 评论