2017-05-30 106 views
0

我有一個java對象的工作,在這種時候我懸停在它的定義如下:如何在對象更改屬性

Employee= {[email protected]}"Welder tech" 
    Name = "Fred" 
    age = "32" 

我感到莫名其妙,什麼{焊機@ 4562}「焊機高科技「是。但是,我需要將「焊機技術」更改爲其他文本。我怎樣才能做到這一點? (我相信這個目標是通過反射創建)

+0

請將代碼發佈到您的java對象。 – hallaksec

+0

public class Employee {String name;字符串年齡} –

回答

1

這裏有一個quick explanation這可以解釋爲什麼你要

{焊機@ 4562}「焊工技術」

這是由於Java中的默認toString()方法。爲了改變這種狀況,以提供符合您的預期輸出,你應該覆蓋它,這裏有一個簡單的例子:

public String toString(){ 
    return "Hello, I am " + name; 
} 

還要改變你的對象的字段,你應該創建一個getter的值和一個setter每個字段如下:

private String name; 
public void setName(String name) { this.name = name; } 
public String getName() { return name; } 

如果你不熟悉的「this」關鍵字,那麼請參考this

+0

即時通訊不能做到這一點,因爲Employee對象已經創建,那麼我需要改變它的名字。我想我所要求的是改變一個對象的simpleName。 –

+0

@ elutionselutions1即使它已經創建,您仍然可以將setter方法或上述任何方法添加到對象,並且不會影響現有實例。 – hallaksec

+0

是的,實際上我向你提出的是錯誤的 - 對象確實有setter和getters –