初学Java,toString(十四)

news/2024/7/10 17:33:00 标签: java, apple, string, class, c#, object
class="baidu_pl">
class="article_content clearfix">
class="htmledit_views">

C#里面也有个ToString,注意大小写的不同

Java的toString的和C#的ToString完全不是同一概念,首先toString是一个"自我描述"的方法,然后它可以被重写

class="language-class="tags" href="/tags/JAVA.html" title=java>java">public class Person  
{
	private String name;
	public Person(String name)
	{
		this.name = name;
	}
	public void info()
	{
		System.out.println("此人名为: " + name);
	}
}

public class PrintObject 
{
	public static void main(String[] args) 
	{
		Person p = new Person("孙悟空");
		System.out.println(p);
	}
}

这里面println(p)默认调用了toString方法,和println(p.toString())是等同的效果

最后打印出的结果为Person@9945ce,@后面16进制数可能发生改变.这个toString方法是由Object类提供的,它返回的是类名+@+hashCode 值.

最后如果需要自定义toString的内容,就必须重写该方法

class="language-class="tags" href="/tags/JAVA.html" title=java>java">public class  Apple
{
	private String color;
	private double weight;
	public Apple(){}
	public Apple(String color,double weight)
	{
		this.color = color;
		this.weight = weight;
	}
        public String toString()
	{
		return "一个苹果,颜色是: " + color + ", 重量是: " + weight;
	}
}

public class TestToString  
{
	public static void main(String[] args) 
	{
		Apple a = new Apple("红色",5.68);
		System.out.println(a);
	}
}

输出结果: 一个苹果,颜色是:红色,重量是:5.68

toString的格式可以改为如下更清晰的格式

类名[属性 1=值 1, 属性 2 = 值 2,...] 

class="language-class="tags" href="/tags/JAVA.html" title=java>java">public String toString()
{
       return "Apple[color=" + color + ",weight=" + weight + "]";
}



http://www.niftyadmin.cn/n/1411547.html

相关文章

【闭包概念】关于闭包概念不同解读——你可以自己理解。

写在前面: 闭包是被讲烂的内容,但是当我不了解的情况下,看过很多教程,听过很多道理,还是无法完全理解闭包这个东西。所以想要写一篇比较详细,前端小白也能够真正理解闭包概念的干货文章,本文参考…

React-Native中关于样式的良好实践

react-native中的样式 react-native中,所有的代码文件都是由一个个的js(x)文件构成,样式也是一样,也是js代码来描述,准确的来说,是StyleSheet模块。 写样式,必须引入StyleSheet模块。 import { StyleShe…

初学Java,单例模式(十五)

下面的代码是使用Java实现设计模式中的单例模式public class Singleton {//使用一个变量来缓存曾经创建的实例private static Singleton instance;//将构造器使用private修饰,隐藏该构造器private Singleton(){}//提供一个静态方法,用于返回Singleton实例//该方法可以加入自定…

苹果电脑MacbookPro 使用NTFS磁盘读写配置手动配置免费

苹果电脑MacbookPro 使用NTFS磁盘读写配置手动配置免费 背景介绍 由于在苹果电脑上使用的NTFS格式的硬盘,没有写入硬盘的权限,不能将电脑上的文件拷贝到磁盘里。一种解决方案是将硬盘格式化成ext3 格式,就能直接使用mac电脑写文件。但是我的…

如何在react中封装服务

引言 最近半年,所做的项目都是集中在react以及react-native上,对于react的一些基本用法,渐渐形成了自己的一些见解,而服务则是这些见解中比较重要的一部分。 引言为什么要封装服务服务的概念服务封装的优势 服务封装的基本原则基…

初学Java,final关键字(十六)

之所以单独把这个关键字拿出来说是因为C#没有这个关键字,但C#却有与之不同场景下对应的不同关键字 final 所修饰的不管是类,变量,还是方法,都是赋初值后不允许再修改的.而C#要达到同样目的话,需要用不同的关键字 下面是…

提供三份程序员简历模板

下载地址 点击下载 https://download.csdn.net/download/u014574478/12545113

使用JavaScript判断手机的横竖屏

横竖屏的需求由来 横竖屏问题主要来源于移动端 iPhone、Android、以及 iPad这些设备中。有时候,我们的前端网页不仅要求在竖屏的情况下能够完美的展示,而且要求我们在横屏的情况下也有不错的网页展示效果。为了达到这个需求,就要求我们在不同…