专注Java教育14年 全国咨询/投诉热线:400-8080-105
动力节点LOGO图
始于2009,口口相传的Java黄埔军校
首页 学习攻略 Java学习 Java重写tostring方法

Java重写tostring方法

更新时间:2022-12-26 10:47:37 来源:动力节点 浏览1556次

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

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

也就是类名 + @ +hashCode的值

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

public class pratise {
    String num="aaaa";
    public String toString(){
        return num;
    }
   public static void main(String[] args){
       String s1="111";
       System.out.println(s1.toString());
       //输出111 而并非aaaa;
   }
}

重写toString()对类生效

package com.stu;
//用toString 重写一个类
public class Car {	
   //成员变量
	private String carNo;
	private String carName;
	private String color;
	private double price;	
   //有参构造函数
	Car(String carNo,String carName,String color,double price){
		this.carNo=carNo;
		this.carName=carName;
		this.color=color;
		this.price=price;
	}	
	//get set方法
	public String getCarNo(){
		return carNo;
	}	
	public void setCarNo(String carNo){
		this.carNo=carNo;
	}	
	public String getCarName() {
		return carName;
	}
	public void setCarName(String carName) {
		this.carName = carName;
	}
	public String getColor() {
		return color;
	}
	public void setColor(String color) {
		this.color = color;
	}
	public double getPrice() {
		return price;
	}
	public void setPrice(double price) {
		this.price = price;
	}	
       //重写toString();
	public String toString(){
		return "这个汽车名叫 "+carName+",型号是 "+carNo+",汽车颜色 "+color+",价格 "+price;
	}	
	public static void main(String[] args){
       //创建一个Car的对象
	Car myCar=new Car("苏A 4995","长安汽车","灰蓝色",70000.00);   //类名开头字母大写
        System.out.println(myCar.toString());
	}
}

输出结果:

假如不对toString()进行重写则 输出结果:

 com.stu.Car@2542880d  ==> 类名 + “@” +hashCode值

 

提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>