java代码

[复制链接]
查看11 | 回复4 | 2009-2-20 13:12:05 | 显示全部楼层 |阅读模式
public class pubTest {

float fvar1,fvar2;

int ivar1;

float sum(float fvar1,int ivar1){

fvar2=fvar1+ivar1;

return fvar2;

}

public static void main(String[] args){

pubTest pt=new pubTest();

pt.sum(3.0f,1);

System.out.println(pt);

}
}
输出的结果是a.pubTest@6b97fd大家告诉我这是个什么东西啊?
为什么会输出这个?

回复

使用道具 举报

千问 | 2009-2-20 13:12:05 | 显示全部楼层
因为pt是个对象,如果你想通过这个对象输出想要的结果可以加上public String toString(){ return fvar2+""; }这个方法,重写了对象的toString方法,这样当输出时就是你想要的结果了。...
回复

使用道具 举报

千问 | 2009-2-20 13:12:05 | 显示全部楼层
地址!pt是个对象!System.out.println(pt.sum(3.0f,1);)试一下!...
回复

使用道具 举报

千问 | 2009-2-20 13:12:05 | 显示全部楼层
javaAPIObject 类的 toString 方法返回一个字符串,该字符串由类名(对象是该类的一个实例)、at 标记符“@”和此对象哈希码的无符号十六进制表示组成。换句话说,该方法返回一个字符串,它的值等于: getClass().getName() + '@' + Integer.toHexString(hashCode())...
回复

使用道具 举报

千问 | 2009-2-20 13:12:05 | 显示全部楼层
pubTest 这个对象的toString方法的返回值,如果没重写该方法的话,返回的为超类Object的toString方法,大约是内存地址码吧。...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行