您的位置:首页 > 移动开发 > Objective-C

java学习日记_52:Object类的getClass()方法

2016-11-05 22:40 661 查看

package cn.itcast_02;

/*

 * public String toString():返回该对象的字符串表示。

 * 

 * Integer类下的一个静态方法:

 * public static String toHexString(int i):把一个整数转成一个十六进制表示的字符串

 * 

 * 这个信息的组成我们讲解完毕了,但是这个信息是没有任何意义的。所以,建议所有子类都重写该方法。

 * 怎么重写呢?

 * 把该类的所有成员变量值组成返回即可。

 * 重写的最终版方案就是自动生成toString()方法。

 * 

 * 注意:

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

 */

public class StudentDemo {
public static void main(String[] args) {
Student s = new Student();
System.out.println(s.hashCode());
System.out.println(s.getClass().getName());
System.out.println("--------------------");
System.out.println(s.toString());// cn.itcast_02.Student@42552c
System.out.println("--------------------");
// toString()方法的值等价于它
// getClass().getName() + '@' + Integer.toHexString(hashCode())
// this.getClass().getName()+'@'+Integer.toHexString(this.hashCode())

// cn.itcast_02.Student@42552c
// cn.itcast_02.Student@42552c

System.out.println(s.getClass().getName() + '@'
+ Integer.toHexString(s.hashCode()));

System.out.println(s.toString());

// 直接输出对象的名称
System.out.println(s);
}
}

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;
// }

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: