一、Object类介绍

Object类在Java里面是一个比较特殊的类,JAVA只支持单继承,子类只能从一个父类来继承,如果父类又是从另外一个父类继承过来,那他也只能有一个父类,父类再有父类,那也只能有一个,JAVA为了组织这个类组织得比较方便,它提供了一个最根上的类,相当于所有的类都是从这个类继承,这个类就叫Object。所以Object类是所有JAVA类的根基类,是所有JAVA类的老祖宗。所有的类,不管是谁,都是从它继承下来的。
二、toString方法介绍
一个字符串和另外一种类型连接的时候,另外一种类型会自动转换成String类型,然后再和字符串连接。基础的数据类型int,float,double转换成字符串比较简单,按照它们的数字转换过来就成了,可以引用类型呢,Person p = new Person();一个字符串加上这个p,你就不知道要怎么把这个p转换成字符串了,因为这个p是一个引用类型。 p = new Person();
public class TestToString {
public static void main(String[] args) {
Dog d = new Dog();
/**
* 如果没有重写toString方法,那么输出来的默认的字符串内容是“类名+哈希编码”,
* 如:dog=cn.galc.test.Dog@150bd4d
* 这里的d就是一个引用类型,打印的时候,这个引用类型d会自动调用toString()方法将自己转换成字符串然后再与字符串”d:=”相连,
* 然后一起被打印出来。d为什么可以自动调用toString()方法呢,Dog类里面也没有声明这个toString()方法。
* 这是因为toString()方法是Object类里面的方法,而所有的类都是从Object类继承下来的,
* Dog类当然也不例外,所以Dog类继承了Object类里面的toString()方法,
* 所以Dog类的对象当然可以直接调用toString()方法了。
* 但是Dog类对继承下来的toString()方法很不满意,
* 因为使用这个继续下来toString()方法将引用对象转换成字符串输出时输出的是一连串令人看不懂的哈希编码。
* 为了使打印出来的信息使得正常人都能看得懂,因此要在Dog类里面把这个继承下来的toString()方法重写,
* 使得调用这个toString()方法将引用对象转换成字符串时打印出来的是一些正常的,能看得懂的信息。
* 在子类重写从父类继承下来的方法时,从父类把要重写的方法的声明直接copy到子类里面来,
* 这样在子类里面重写的时候就不会出错了。
*/
System.out.println("dog="+d);//打印结果:dog=I'm a cool Dog
}
}
class Dog{
/**
* 在这里重写了Object类里面的toString()方法后,
* 引用对象自动调用时调用的就是重写后的toString()方法了,
* 此时打印出来的显示信息就是我们重写toString()方法时要返回的字符串信息了,
* 不再是那些看不懂的哈希编码了。
*/
public String toString() {
return "I'm a Dog";
}
}
任何一个类都是从Object类继承下来的,因此在任何一个类里面都可以重写这个toString()方法。toString()方法的作用是当一个引用对象和字符串作连接的时候,或者是直接打印这个引用对象的时侯,这个引用对象都会自动调用toString()方法,通过这个方法返回一个表示引用对象自己正常信息的字符串,而这个字符串的内容由我们自己去定义,默认的字符串内容是“类名+哈希编码”。因此我们可以通过在类里面重写toString()方法,把默认的字符串内容改成我们自己想要表达的正常信息的字符串内容。
以上所述是小编给大家介绍的Java中Object toString方法简介_动力节点Java学院整理,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
# object的tostring方法
# java基础之 Arrays.toString()方法详解
# Java中替代equals
# compareTo和toString的方法
# Java Object toString方法原理解析
# Java中构造方法set/get和toString的使用详解
# java tostring方法重写代码示例
# java中的 toString()方法实例代码
# Java中区别.toString()
# (String)
# valueOf()方法
# Java toString方法重写工具之ToStringBuilder案例详解
# 重写
# 转换成
# 子类
# 是从
# 的是
# 打印出来
# 是一个
# 然后再
# 任何一个
# 看不懂
# 小编
# 有一个
# 看得懂
# 也不
# 在这里
# 又是
# 你就
# 也没
# 在此
# 他也
相关文章:
代购小票制作网站有哪些,购物小票的简要说明?
如何选择服务器才能高效搭建专属网站?
宝塔Windows建站如何避免显示默认IIS页面?
微信小程序 input输入框控件详解及实例(多种示例)
孙琪峥织梦建站教程如何优化数据库安全?
利用JavaScript实现拖拽改变元素大小
如何高效生成建站之星成品网站源码?
公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?
如何在万网主机上快速搭建网站?
深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?
重庆市网站制作公司,重庆招聘网站哪个好?
公众号网站制作网页,微信公众号怎么制作?
在线ppt制作网站有哪些,请推荐几个好的课件下载的网站?
广州网站制作的公司,现在专门做网站的公司有没有哪几家是比较好的,性价比高,模板也多的?
深圳企业网站制作设计,在深圳如何网上全流程注册公司?
,网站推广常用方法?
定制建站是什么?如何实现个性化需求?
手机网站制作与建设方案,手机网站如何建设?
胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?
,怎么用自己头像做动态表情包?
建站VPS能否同时实现高效与安全翻墙?
如何在VPS电脑上快速搭建网站?
名字制作网站免费,所有小说网站的名字?
建站之星如何通过成品分离优化网站效率?
建站168自助建站系统:快速模板定制与SEO优化指南
网站制作中优化长尾关键字挖掘的技巧,建一个视频网站需要多少钱?
建站之星IIS配置教程:代码生成技巧与站点搭建指南
企业宣传片制作网站有哪些,传媒公司怎么找企业宣传片项目?
,在苏州找工作,上哪个网站比较好?
如何破解联通资金短缺导致的基站建设难题?
,柠檬视频怎样兑换vip?
头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?
c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】
如何通过万网虚拟主机快速搭建网站?
番禺网站制作公司哪家值得合作,番禺图书馆新馆开放了吗?
大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?
建站之星如何实现五合一智能建站与营销推广?
建站之星如何取消后台验证码生成?
较简单的网站制作软件有哪些,手机版网页制作用什么软件?
公司网站设计制作厂家,怎么创建自己的一个网站?
网站app免费制作软件,能免费看各大网站视频的手机app?
建站主机SSH密钥生成步骤及常见问题解答?
再谈Python中的字符串与字符编码(推荐)
宝塔建站无法访问?如何排查配置与端口问题?
如何使用Golang table-driven基准测试_多组数据测量函数效率
C++用Dijkstra(迪杰斯特拉)算法求最短路径
如何通过WDCP绑定主域名及创建子域名站点?
C#如何使用XPathNavigator高效查询XML
如何在Windows 2008云服务器安全搭建网站?
高端企业智能建站程序:SEO优化与响应式模板定制开发
*请认真填写需求信息,我们会在24小时内与您取得联系。