更新時間:2022-12-26 10:47:37 來源:動力節點 瀏覽2053次
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值
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習