永发信息网

java中输出当前对象的语句 好像System.out.println(this.toString())输出的只是对象类型和地址,

答案:5  悬赏:50  手机版
解决时间 2021-03-25 01:46
java中输出当前对象的语句 好像System.out.println(this.toString())输出的只是对象类型和地址,
最佳答案
不需要这样写System.out.println(this.toString())
只需要System.out.println(this) 它会自动调用this对象的toString方法
你必须在类里重写toString方法(因为所有类都有一个原始祖先Object类,Object的toString方法是输出的地址) 然后把你想要输入的期望结果在toString方法里写明
说白了 你就把toString当做一个普通的方法 这个方法在你System.out.println(this)的时候自动调用

你修改了toString和直接用没区别啊? 你改的toString方法还是返回的this对象啊?
你想要的结果到底是什么呢? 一般来说你类里会定义一些属性
不如一个学生类
class Student{
private int id;
private String name;
......
public String toString(){
return "学号:"+id+"姓名:"+name;//这里就返回他的学号和姓名 你直接返回this没有任何意义 只是一个地址
}
}追问你好,我只是想看一下当前对象是什么,可是它输出的却是当前对象的地址啊,怎样输出当前对象,而不是它的地址。谢谢追答不能获得当前对象的名称,也没任何意义 只可能获得当前对象对应的类 用this.getClass()
全部回答
那是默认的toString, 你要重写toString方法
楼上说的对啊,只要在本类中重写toString方法,这个方法返回的值就是你期望输出的了
有实例吗?你期望输出什么样的对象?
覆盖tostring()方法,
public String toString(){
return null }; 注意:null是你要打印的对象追问class Apple{
public String toString(){
return this;
}
Apple getPeeled(){
this.toString();
}
。。。。。。。。。
}
这样重写了好像还是不可以啊,他它说类型不匹配,我就把string换成了apple类型,可是还是错的
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
那年花开月正圆周莹奋力 机器织布局劫后重生
简述两种感光系统的功能特点
光清旅社在什么地方啊,我要过去处理事情
大蒜,蒜苗,蒜薹之间是什么关系?大蒜是从哪
王者荣耀成就超神之旅怎么刷
北京年收入多少万算中等,年收入年收入年收入
葫芦侠修改金币后虽然显示的是99999,是真实
泡芙的深层含义
桐梓县高桥镇周市村金鸡水公路何时能修好
口袋妖怪黑白中,佐罗亚克怎么获得(在正常游
西安国企工资多少
做梦梦见柿子是什么意思
伴娘需要注意什么,要做什么
铁艺楼梯扶手价位是多少
男朋友说:只要人不做违背原则的事都可以原谅
推荐资讯
discuz贴子摘要调用(有高手么????)
塔吊基础设置在筏板基础中时怎样施工?
四两四钱男命详解,有没有儿子命
瑞安最大的律师事务所
我和我男朋友在我哥刚结婚没几个月的新房里同
锚杆与水平面的夹角怎么确定
报错: Active Server Pages, ASP 0140 (0
跪求《跆拳道》考试试卷( A 卷)答案
甘肃省平凉市庄良县卧龙乡三召村的邮编是多少
王字旁一个缶是什么字?
写英国的信的形式
给宝宝捋袖子抻着手脖子了怎么办
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?