- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java常用类和方法面试题答案
2015年12月20日18:25:21
Java常用类和方法重点总结
作者:数据分析玩家
简述Java中内存分配的问题
1凡是new()出来的东西,都是在堆中进行分配的
2局部变量【数据类型+变量名】都是在栈中进行分配的
3静态变量【static】和字符串常量【“String”】都是在数据区进行分配的
4方法【代码】都是在代码区进行存放的
2、简述Java中Object类的地位
1Java中所有的类【自己定义的类以及Sun公司提供的类】都默认自动继承了Object类
2Java中所有的类都从Object类中继承了toString()方法、hashCode()方法和equals()等方法
简述Object类中toString()方法的注意事项
1toString()方法的返回值是一个字符串
2toString()方法返回的是类的名字和该对象的哈希码组成的一个字符串,即toString()方法返回的是该对象的字符串表示形式
3在Java中System.out.println(类对象名)实际输出的是该对象的toString()方法返回的字符串,即括号中的内容等价于类对象名.toString(),toString方法的好处是在碰到println方法的时候会被自动调用,不用显示的写出来
4建议所有的子类都重写从Object类中继承过来toString方法,否则toString方法的返回值没有什么实际含义
简述Object类中equals()方法的注意事项
1equals方法的返回值为true或false
2Object类中equals方法只有在两个对象是同一块内存区域时,即不但内容相同、地址还必须相同时才返回true,否则即便内容相同、如果地址不同只会返回false
3重写Object类中的equals方法目的在于:保证只要两个对象的内容相同,equals方法就返回true
简述Object类中hashCode()方法的注意事项
1哈希码原本指的是内存空间地址的十六进制表示形式
2hashCode()方法返回的是该对象的哈希码、即该对象的真实内存地址的十六进制表示形式,但是重写完hashCode()方法之后,返回的不再是该对象真实内存地址的十六进制表示形式
6、学习Java中toString方法、equals方法、hashCode方法共同的一个注意事项
在Java中,凡是动态分配的内存都是没有名字的,而是将其地址赋给一个指针变量【引用】,用指针变量去代表这个事物,所以引用和动态分配的内存有本质上的区别,但是在学习Java中的toString方法、equals方法和hashCode方法时默认引用和其指向的动态分配的内存是一个事物,不区分彼此
从逻辑上阐述为什么要重写equals方法和hashCode方法
1对于用户来说,逻辑上只要两个对象的内容相同,其地址以及这两个对象就应该相等,而要保证地址相同就应该重写hashCode方法,而要保证对象相同就应该重写equals方法
2凡是Java中自带的类都已经重写了equals方法和hashCode方法,重写之后只要两个对象的内容相同,hashCode方法的返回值就相同,保证地址相同,equals方法就返回true,保证两个对象是同一个对象,而Java中凡是用户自己定义的类只能自己去重写这两个方法
【new Integer(1)与new Integer(2)】
简述String类中的equals方法与Object类中的equals方法的不同点
String类中的equals方法是用来判断两个对象的内容是否相同、而Object类中的equals方法是用来判断两个对象是否是同一个对象,所谓同一个对象指的是内存中的同一块存储空间
对于Java中动态分配的内存来说,等号与equals方法的不同点
等号比较的是两个对象的地址而equals方法比较的是两个对象的内容,本质上比较的都是内存空间里面所存储的东西
简述Java中StringBuffer类的由来
String类对象表示不可修改的UniCode编码字符串、即String类对象一旦创建就不可在更改,即只要创建一个字符串,就会重新分配一块内存空间,因此如果经常对字符串的内容进行修改而使用String类的话,就会造成空间以及时间的浪费,因此如果经常对字符串的内容进行修改的话,可以使用StringBuffer类,StringBuffer类可以一直对同一块内存空间进行操作,对一个字符串不断的进行修改,正因为StringBuffer类的这个优点,所以StringBuffer类中存在着大量修改字符串的方法,但是String类中却没有
简述String、StringBuffer类中常用的一个方法
valueOf():将基本类型数据转化为字符串
简述String类与St
文档评论(0)