![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java面试题
本栏目会讲本人遇到的面试题以及网络上搜集到的面试题进行整合梳理,一方面作为本人的学习笔记,另一方面供网友查看交流。
在下不当人
成长是一条漫长的路。
展开
-
==与equals的区别
==: 它是判断两个对象的地址是否相等。也是说这两个对象是不是同一个对象。基本数据类型==比较的是值,引用数据类型==比较的是内存的地址。 equals: Object的equals等价与==,下面看一下源码 既然如此,那为什么面试题会问这个问题呢? 是因为有部分类重写了equals方法。 例如String类 例如File类 例如Date类等等 以上类都继承了Object的equals方法,并进行了重写,所以以上类的equals方法的功能都是根据重写方法中内容来决定的,..原创 2021-11-26 11:25:12 · 98 阅读 · 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 · 322 阅读 · 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 · 143 阅读 · 0 评论