API中的Object之toString方法

标签: API中的Object之toString方法 Object类 toString方法的重写 toString方法 API
4人阅读 评论(0) 收藏 举报
分类:

API中的Object之toString方法


1、toString()方法:public String toString():返回该对象的字符串表示。

通常,toString 方法会返回一个“以文本方式表示”此对象的字符串。

结果应是一个简明但易于读懂的信息表达式。建议所有子类都重写此方法。

2、Object 类的 toString 方法返回一个字符串,该字符串由类名(对象是该类的一个实例)、at 标记符“@”和此对象哈希码的无符号十六进制表示组成。

换句话说,该方法返回一个字符串,它的值等于:

    getClass().getName() + '@' + Integer.toHexString(hashCode())
    

3、Integer 类下的一个静态方法:public static String toHexString(int i)

以十六进制(基数 16)无符号整数形式返回一个整数参数的字符串表示形式。

这个信息的讲解完毕,但是该结果无意义。因此,建议子类均要重写!怎么重写呢?

一般情况下:将该类的所有成员变量值组成返回值即可。

重写toString的最终方案是:自动 生成toString方法。

直接输出一个对象的名称,就是调用该对象的toString方法。

4、举例子:

package cn.itcast_02;

public class Student {
	private String name;
	private int age;

	public Student() {
		super();
	}

	public Student(String name, int age) {
		super();
		this.name = name;
		this.age = age;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public int getAge() {
		return age;
	}

	public void setAge(int age) {
		this.age = age;
	}

	@Override
	public String toString() {
		return "Student [name=" + name + ", age=" + age + "]";
	}
	
/*	@Override
	public String toString() {
		//return super.toString();
		//return "hello";
		return "姓名:"+name+", 年龄:"+age;
	}
*/
	
}
*************************************************
package cn.itcast_02;

public class StudentDemo {
	public static void main(String[] args) {
		Student s = new Student();
		System.out.println(s.hashCode());
		System.out.println("---------------");
		System.out.println(s.getClass().getName());	//cn.itcast_02.Student
		System.out.println("---------------");
		
		//getClass().getName() + '@' + Integer.toHexString(hashCode())
		//等价于:this.getClass().getName() + '@' + Integer.toHexString(this.hashCode())
		System.out.println(s.toString());	//n.itcast_02.Student@70dea4e
		
		System.out.println("---------------");
//		cn.itcast_02.Student@70dea4e
//		cn.itcast_02.Student@70dea4e
		System.out.println(s.getClass().getName()+'@'+Integer.toHexString(s.hashCode()));		
		System.out.println(s.toString());	//Student [name=null, age=0]
		
		System.out.println("---------------");
		System.out.println(s);		
		
	}

}



查看评论

Object类及toString方法介绍

一、Object类介绍 Object类在JAVA里面是一个比较特殊的类,JAVA只支持单继承,子类只能从一个父类来继承,如果父类又是从另外一个父类继承过来,那他也只能有一个父类,父类再有父类,那...
  • qq_24892029
  • qq_24892029
  • 2016-05-09 16:24:38
  • 5698

Object类的toString方法

class Dog {     public String toString()     {         return "I'm a hot dog!";     } } publi...
  • Prince140678
  • Prince140678
  • 2016-07-05 21:55:26
  • 608

js中toString 和 object.toString区别解释

1.toString 和 object.toString运行结果演示
  • Turnhead
  • Turnhead
  • 2014-06-04 11:36:15
  • 3334

JavaScript Object使用toString

今天偶然看到个js面试题目,问控制台输出信息是什么。 var a = {}; var b = {name:"ZS"}; var c = {}; c[a] = "demo1"; c[b] = "dem...
  • u011209223
  • u011209223
  • 2017-02-27 22:48:37
  • 424

Object类toString方法重写,equals方法重写

Object类中有toString方法,equals方法 toString()重写: equals()方法: 双等于比较的是,是否为同一个对象 equals比较的是,两个对象像...
  • u012167213
  • u012167213
  • 2016-11-22 15:59:21
  • 1408

Object类中的toString(),equals(), hashCode()方法之间的关系

1,在没有重写之前: (1)toString()方法返回的是对象的:Object 类的 toString 方法返回一个字符串,该字符串由类名(对象是该类的一个实例)、at 标记符“@”和此对象哈希码...
  • u014756517
  • u014756517
  • 2016-07-17 22:36:58
  • 1135

【Java基础之Object类(一)】Java中Object类中的所有方法(toString、equals、hashCode、clone、finalize、wait和notify等)详解

一、Object中所有方法简介: 在根类Object中包含一下方法:  clone();equals();finalize();getClass();[align=left][/align]noti...
  • cangchen
  • cangchen
  • 2015-04-10 12:33:32
  • 1791

Object类--toString方法

toString()方法1、在Object类中定义toString()方法的时候返回对象的哈希code码(对象地址字符串)直接输出对象: 2、可以通过重写toString()方法表示出对象的属性之值...
  • T_P_F
  • T_P_F
  • 2016-11-12 19:00:12
  • 777

java基础:Object 的toString方法

一:首先看Demo1 public class Dog1{ Dog1(){ } public static void main(String[] args) { Dog1 d = n...
  • u013628152
  • u013628152
  • 2015-02-01 15:30:45
  • 2402

如何覆盖Object类中的equals(),hashCode(),toString()方法

在java中,除了基本类型之外的所有类型,包括数组类型,都是Object类的子类。这些类都或继承或覆盖了Object类中的equal,hashCode和toString方法。在自定义类的时候,为了实现...
  • caiger_v5
  • caiger_v5
  • 2015-05-27 11:45:13
  • 1116
    个人资料
    持之以恒
    等级:
    访问量: 6万+
    积分: 3280
    排名: 1万+
    最新评论