A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© biu 中级黑马   /  2016-4-1 23:04  /  313 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1)equals()方法与“==”的区别
(1)对于字符串变量以及基本数据类型的包装类型来说:“==”比较两变量的引用是否相等,即变量在内存的首地址是否相等。“equals()”比较实体(内存空间)的内容是否相等,因为String类中重新定义了equals()方法,并且是用来比较其值得而不是内存地址。注意:如果  StringBuffer s1=new StringBuffer(“a”); StringBuffer s2=new StringBuffer(“a”); s1.equals(s2);为false,因为StringBuffer类中没有重新定义的equals()方法,因此equals()方法来自于Object类,而Object类的equals()方法是用来比较地址的,所以为false。
(2)对于非字符串变量来说:“==”和“equals()”的作用是相同的,都是用来比较对象在堆内存中的首地址,即用来比较两个引用变量是否指向同一个实体(内存空间)。注意:(1)如果是基本数据类型比较只能用“==”不能用“equals()”。(2)对于基本数据类型的包装类型“==”比较的是实体的引用,“equals()”比较的是实体的内容。
2)是否可以继承String类?
String类是final类故不可以继承。
3)构造器Constructor是否可被override?
构造器Constructor不能被继承,因此不能被override(重写),但可以被overload(重载)。

1 个回复

倒序浏览
赞赞赞!!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马