怎么使用ToStringBuilder重寫(xiě)toString方法

小億
85
2023-10-23 13:17:05

要使用ToStringBuilder來(lái)重寫(xiě)toString方法,你需要按照以下步驟進(jìn)行操作:

  1. 導(dǎo)入org.apache.commons.lang3.builder.ToStringBuilder類。
  2. 在你的類中,使用@Override注解來(lái)重寫(xiě)toString方法。
  3. 在toString方法中,使用ToStringBuilder的reflectionToString方法來(lái)生成字符串表示形式。

以下是一個(gè)示例代碼:

import org.apache.commons.lang3.builder.ToStringBuilder;

public class MyClass {
    private String name;
    private int age;

    // 構(gòu)造函數(shù)、getter和setter等省略

    @Override
    public String toString() {
        return ToStringBuilder.reflectionToString(this);
    }
}

在上面的示例中,我們重寫(xiě)了MyClass類的toString方法,并使用ToStringBuilder的reflectionToString方法來(lái)生成字符串表示形式。這個(gè)方法會(huì)使用類的所有字段來(lái)生成字符串,包括私有字段。

當(dāng)你調(diào)用對(duì)象的toString方法時(shí),它會(huì)返回類似于MyClass@123abc的默認(rèn)字符串表示形式。但是,如果你使用ToStringBuilder來(lái)重寫(xiě)toString方法,它將返回一個(gè)包含字段和值的更有意義的字符串表示形式,例如MyClass[name=John, age=25]

0