首页 > 编程语言 >JAVA重写(override)toString方法

JAVA重写(override)toString方法

时间:2024-11-12 09:10:39浏览次数:1  
标签:JAVA 方法 System println toString override 重写 out

1.toString()方法 一般出现在System.out.println(类名.toString());

toString()是一种自我描述方法 本身返回的是 getClass().getName() + “@” +Integer.toHexString(hashCode());

也就是 类名 + @ +hashCode的值

重写toString() 只会对类生效,并不能字符串生效;

 

2.为什么要重写toString()方法

在Object类里面定义toString()方法的时候返回的对象的哈希code码,这个hashcode码不能简单明了的表示出对象的属性。所以要重写toString()方法。

当需要将一个对象输出到显示器时,通常要调用他的toString()方法,将对象的内容转换为字符串.java中的所有类默认都有一个toString()方法。

默认情况下 System.out.println(对象名)或者System.out.println(对象名.toString())输出的是此对象的类名和此对象对应内存的首地址如果想自定义输出信息必须重写toString()方法。

 

注意事项:

1.必须被声明为public

2.返回类型为String

3.方法的名称必须为toString,且无参数

4.方法体中不要使用输出方法System.out.println()

标签:JAVA,方法,System,println,toString,override,重写,out
From: https://www.cnblogs.com/clarke157/p/18541068

相关文章

  • javaScript数据类型及相互转换
    2.2、JS数据类型2.2.1、数据类型2.2.1.1、为什么需要数据类型在计算机中,不同的数据所需占用的存储空间是不同的,为了便于把数据分成所需内存大小不同的数据,充分利用存储空间,于是定义了不同的数据类型。简单来说,数据类型就是数据的类别型号2.2.1.2、变量的数据类型JS是一种......
  • JAVA完成猜数字小游戏
    importjava.util.Scanner;importjava.util.Random;publicclasscsj{publicstaticvoidmain(String[]args){Scannerscanner=newScanner(System.in);Randomrandom=newRandom();intto=random.nextInt(100);//产......
  • 细节解析 JavaScript 中 bind 函数的模拟实现
    大家的阅读是我发帖的动力,本文首发于我的博客:deerblog.gu-nami.com/,欢迎大家来玩,转载请注明出处喵。......
  • Java中的 Exception 和 Error 有什么区别
    Exception和Error都是Throwable类的子类(在Java代码中只有继承了Throwable类的实例才可以被throw或者被catch)它们表示在程序运行时发生的异常或错误情况。总结来看:Exception表示可以被处理的程序异常,Error表示系统级的不可恢复错误。详细说明:1)Exception:是程序中可......
  • Java面试之多线程&并发篇
    前言本来想着给自己放松一下,刷刷博客,突然被几道面试题难倒!如何停止一个正在运行的线程?notify()和notifyAll()有什么区别?sleep()和wait()有什么区别?volatile是什么?可以保证有序性吗?似乎有点模糊了,那就大概看一下面试题吧。好记性不如烂键盘***12万字的java面试题整理***如......
  • 深入理解Java线程池:线程任务完成检测的原理与实现
    在Java中,线程池(ThreadPool)是用于管理和复用线程的机制,通过它可以高效地管理多线程任务。一个常见的问题是:线程池是如何知道某个线程的任务已经完成的?本篇文章将深入探讨线程池任务完成的检测原理,并结合代码示例,让大家深入理解线程池的工作方式。推荐正在找工作的朋友们:就......
  • Java Lambda表达式与函数式接口和Stream API的常用方法
    JavaLambda表达式常与函数式接口和流(StreamAPI)一起使用,提供了非常强大的方式来处理集合和其他数据结构。以下是一些常用的Lambda表达式方法和它们的用途,特别是在结合java.util.stream.Stream时:1.map()用途:用于将流中的每个元素转换成另一种形式。示例:List<String>name......
  • Java中包装类型和基本类型的区别:深入理解与应用
    Java中包装类型和基本类型的区别:深入理解与应用引言在Java编程中,基本类型(PrimitiveTypes)和包装类型(WrapperTypes)是两种不同的数据类型。基本类型是Java语言的核心部分,而包装类型则是为了提供更多的功能和灵活性。本文将深入探讨Java中包装类型和基本类型的区别,帮助你更......
  • 深入理解Java动态代理:原理、实现与应用
    深入理解Java动态代理:原理、实现与应用在现代软件开发中,面向对象编程(OOP)和面向切面编程(AOP)是两种重要的编程范式。Java语言中的动态代理(DynamicProxy)是实现AOP的关键技术之一,它允许我们在运行时创建一个代理对象,该代理对象可以拦截对真实对象方法的调用,并在方法调用前......
  • Java 8 Optional:用法和问题与解决示范
    1.引言Java8引入了Optional类来解决传统空指针异常(NullPointerException)的问题。Optional是一个容器类,专门用于表示可能包含或不包含非空值的对象。本文将深入探讨Optional的常见用法、常见问题及其解决方案,以及在实际项目中如何利用Optional优化代码结构,提高代......