package unit2;
public class Java18 {
public static void main(String[] args) {
// toString方法底层事理源码
// toString方法是Object类中的方法
T t = new T();
t.setName("张三");
// public String toString() {
// return getClass().getName() + "@" + Integer.toHexString(hashCode());
// }
// hashCode()方法返回工具的哈希值int整数
// 包名.类名@Integer.toHexString(hashCode())
// 包名.类名@hashCode的16进制字符串
// 包名.类名@工具的内存地址
// 自定义类须要重写toString方法、打印工具的内部信息、而不是打印默认的地址
// unit2.T@1b6d3586
System.out.println(t);
System.out.println(t.toString());
System.out.println(t.hashCode());
System.out.println(Integer.toHexString(t.hashCode()));
// Integer.toHexString功能:10进制转换为16进制的字符串形式
// 10进制:0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16
// 16进制:0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f
//System.out.println(Integer.toHexString(13));
}
}
class T {
String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "名字是" + this.name;
}
}