1 package com.bytezreo.objectclass;
2
3 import java.util.Date;
4
5 /**
6 *
7 * @Description Object类中toString的方法
8 * @author Bytezero·zhenglei! Email:420498246@qq.com
9 * @version
10 * @date 2021年9月24日下午2:20:19
11 * @ Object类中toString的方法
12 *
13 * 1.当我们输出一个对象的引用时,实际上就是调用当前对象的toString()方法
14 *
15 * 2.Object类中toString()的定义:
16 * public String toString() {
17 return getClass().getName() + "@" + Integer.toHexString(hashCode());
18 }
19 *
20 * 3.像String,Date,File,包装类等都重写了Object类中的toString()方法
21 * 使得在调用对象的toString()时,返回“实体内容” 信息
22 *
23 * 4.自定义类也可以重写 toString() 方法,当调用此方法时,返回对象的“实体内容”
24 *
25 *
26 *
27 *
28 *
29 *
30 *
31 */
32 public class ToString
33 {
34 public static void main(String[] args) {
35
36 Customer cust1 = new Customer("Tom",21);
37
38 //没重写
39 // System.out.println(cust1.toString()); //地址值
40 // System.out.println(cust1); //地址值
41
42
43 // 重写以后
44 System.out.println(cust1.toString()); //实体内容
45 System.out.println(cust1); //实体内容
46
47 String str = new String("zhenglei");
48 System.out.println(str); //zhenglei
49
50
51 Date date = new Date(45454545445455L);
52 System.out.println(date.toString());
53 }
54 }
 1 package com.bytezreo.objectclass;
2
3 import java.util.Objects;
4
5 public class Customer
6 {
7 private String name;
8 private int age;
9 public String getName() {
10 return name;
11 }
12 public void setName(String name) {
13 this.name = name;
14 }
15 public int getAge() {
16 return age;
17 }
18 public void setAge(int age) {
19 this.age = age;
20 }
21 public Customer() {
22 super();
23 }
24 public Customer(String name, int age) {
25 super();
26 this.name = name;
27 this.age = age;
28 }
29
30
31
32 //自动生成 equals() 方法
33 @Override
34 public boolean equals(Object obj) {
35 System.out.println("执行自动重写 equals()方法:");
36 if (this == obj)
37 return true;
38 if (obj == null)
39 return false;
40 if (getClass() != obj.getClass())
41 return false;
42 Customer other = (Customer) obj;
43 return age == other.age && Objects.equals(name, other.name);
44 }
45
46
47 //手动实现 equals()
48 //重写原则:比较两个对象的实体内容是否相同
49
50 // @Override
51 // public boolean equals(Object obj)
52 // {
53 // System.out.println("执行手动重写 equals()方法:");
54 // if (this == obj)
55 // {
56 // return true;
57 // }
58 // if(obj instanceof Customer)
59 // {
60 // Customer cust = (Customer)obj;
61 // //比较两个对象的每个属性是否都相同
62 //// if(this.age == cust.age && this.name.equals(cust.name))
63 //// {
64 //// return true;
65 //// }
66 //// else
67 //// {
68 //// return false;
69 //// }
70 //
71 // //或者
72 // return this.age == cust.age && this.name.equals(cust.name);
73 //
74 //
75 // }
76 // return false;
77 // }
78 //
79
80
81
82 //手动写的
83 //@Override
84 //public String toString() {
85 //
86 // return "Customer[name ="+name+",age = "+ age+"]";
87 //
88 //}
89
90
91 //自动写的
92
93 @Override
94 public String toString() {
95 return "Customer [name=" + name + ", age=" + age + "]";
96 }
97
98
99 }

Java toString的使用的更多相关文章

  1. Java toString解析

    Java toString解析 我们知道,Java所有的类都是Object类的派生类,toString就是Object类中的一个方法. 我们看看它的源代码. public String toStrin ...

  2. JAVA toString方法

    在JAVA中,所有的对象都有toString方法: 创建类时没有定义toString方法,输出对象时,会输出对象的哈希值: 它只是sun公司开发java的时候为了方便所有类的字符串操作而特意加入的一个 ...

  3. java.toString() ,(String),String.valueOf的区别

    在Java项目的实际开发和应用中,常常需要用到将对象转为String这一基本功能.本文将对常用的转换方法进行一个总结. 常用的方法有Object#toString(),(String)要转换的对象,S ...

  4. 关于 java.toString() ,(String),String.valueOf的区别

    今天,在群里有一个妹子问我一个问题,我开始时草草帮她解答,后来她说她还是没懂,然后自己仔细看了看,才发现自己其实更本没说清楚其中的道理,在查看源代码和API然后在网上看看前辈们的文章才知道了,这个问题 ...

  5. Java toString()方法的神奇之处

    Java 手册 toString(String类中) public String toString() 返回此对象本身(它已经是一个字符串!). 指定者: 接口 CharSequence 中的 toS ...

  6. Java toString()方法

    JDK API java.lang 的Object类中的toString()方法 toString public String toString() 返回该对象的字符串表示.通常,toString 方 ...

  7. JAVA学习笔记----【转】 java.toString() ,(String),String.valueOf的区别

    在java项目的实际开发和应用中,常常需要用到将对象转为String这一基本功能.本文将对常用的转换方法进行一个总结. 常用的方法有Object#toString(),(String)要转换的对象,S ...

  8. java#tostring

    通常使用apache-commons 来生成tostring方法,但是对于类型为java.util.Date的字段打印效果并不是我们想要的. @Override public String toStr ...

  9. Java toString()方法的自动调用

    如果某一个对象出现在字符串表达式中(涉及“+”字符串对象的表达式),toString()方法就会被自动调动.

  10. 从一道例题谈Arrays.toString()与其他String的转换方法

    阅读该篇文章前,请大家事先阅读一下:   java.toString(),(String),String.valueOf的区别 有了上述基础后,我接下来谈谈从一道题目中获得的些许收获. 今天在做题是发 ...

随机推荐

  1. 学到了,原来 gzip 是种`连续分块`的压缩算法

    作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢! cnblogs博客 zhihu Github 公众号:一本正经的瞎扯 我想要表述的是:假设有 10 mb的数据使用 gzip 算 ...

  2. Gin 框架之jwt 介绍与基本使用

    目录 一.JWT 介绍 二.JWT认证与session认证的区别 2.1 基于session认证流程图 2.2 基于jwt认证流程图 三. JWT 的构成 3.1 header : 头部 3.2 pa ...

  3. Couldn't launch Python exit code 9009

    Couldn't launch Python exit code 9009 start stable-diffusion-webui,发现,python 环境没有,我本地其实是已经安装完毕的,后来发现 ...

  4. Paddlenlp之UIE分类模型【以情感倾向分析新闻分类为例】含智能标注方案)

    相关文章: Paddlenlp之UIE模型实战实体抽取任务[打车数据.快递单] 项目连接:百度AIstudio直接fork我的项目就可以复现 Paddlenlp之UIE分类模型[以情感倾向分析新闻分类 ...

  5. 8.3 C++ 定义并使用类

    C/C++语言是一种通用的编程语言,具有高效.灵活和可移植等特点.C语言主要用于系统编程,如操作系统.编译器.数据库等:C语言是C语言的扩展,增加了面向对象编程的特性,适用于大型软件系统.图形用户界面 ...

  6. PE结构:VA&RVA&FOA 转换复习

    复习一下,不然会忘 1.imagebase 映像基地址 ,默认是0x400000 2.va 虚拟地址,载入OD后的地址,已经映射到内存的地址. 计算实际装入地址 VA imagebase (映像基址) ...

  7. Python 代码推送百度链接

    通过代码实现抓取个人博客中某一页指定文章链接,并批量将该链接推送到百度站长平台,起到快速收录的目的. import sys import requests from bs4 import Beauti ...

  8. 基于AQS实现自定义同步类

    Mutex(互斥锁) Mutex是一个不可重入的互斥锁实现.锁资源(AQS里的state)只有两种状态:0表示未锁定,1表示锁定.下边是Mutex的核心源码: class Mutex implemen ...

  9. Linux下修改MySQL可以远程访问

    所有操作均在MySQL命令行下执行,进入MySQL命令行:mysql -uroot -p #允许root账户远程登录 update mysql.user set host='%' where user ...

  10. Vue核心概念与其指令

    Vue简述 Vue是一套构建用户UI界面的前端框架. 构建用户界面的意思是:往html中填充数据,框架的意思是:一套开发规范.   Vue的特点 1.数据驱动视图 当页面是一个普通的数据展示时,数据改 ...