[Ava]toString()の使用


学習の動機.
特定のオブジェクトに関する情報を出力する必要がある場合、toString()メソッドをそれぞれ使用することを2人の開発者に提案したことがあります.TOString()を勉強していると、開発者がその対象の情報をより分かりやすくするために使っていると判断し、ある程度理解していますが、私の意見を正確に言えないので分かりません.
TOString()とは?
toString()返却객체의 정보toString()メソッドは、すべてのオブジェクトの親オブジェクトによって定義されるメソッドです.最上位クラスであるため、すべてのクラスのデフォルトでtoString()を使用できます.一部のクラスでは過剰になっているが、過剰になっていなければ返却する클래스 이름@16진수코드
public String toString() {
	getClass().getName() + '@' + Integer.toHexString(hashCode());
}
実際にオブジェクトを作成して値を出力すると、次の結果が出力されます.
public class Main {

    public static void main(String[] args) {
        Car car = new Car("car", 0);
        System.out.println(car.toString());
    }
}

public class Car {
    private final String name;
    private int position;

    public Car(String name, int position) {
        this.name = name;
        this.position = position;
    }
}

car.TOString()を省略し、carのみを出力しても同様の結果が得られます.
TOString()を再定義すると、値は新しく定義された形式で出力されます.
public class Main {

    public static void main(String[] args) {
        Car car = new Car("car", 0);
        System.out.println(car);
    }
}

public class Car {
    private final String name;
    private int position;

    public Car(String name, int position) {
        this.name = name;
        this.position = position;
    }

    @Override
    public String toString() {
        return name + " : " + position;
    }
}

ただし、他の言語のように通常の文字列を出力すると、文字列に格納された値が得られます.これは、StringオブジェクトがtoString()メソッドを上書きしているため、保存した値が出力されます.
System.out.println("string");

toString()の利点
機能javaで言うtoString()を再定義する場合のメリットは次のとおりです.
  • 디버깅時に出力される値はtoString()であるため、対象の状態を直接知ることができ、開発が容易である.
  • 対象状態値の로그残した場合、分かりやすい値を格納しやすい.
  • したがって、すべての場合、オブジェクトが持つ重要な情報の大部分を返す必要があります.
    toString()の用途
    では、ユーザーにオブジェクトの情報を表示するときに、toString()メソッドを多すぎて使用できますか?という考えが生まれた.いずれにしてもtoString()はオブジェクトの情報を返し,ユーザにオブジェクトの情報を見せる場合,所望のフォーマットに加工してtoString()を利用するのではないか.
    この効果javaによると、toString()は객체의 정보를 알릴때 사용開発を容易にするため、すべての場合にtoString()を上書きすることを推奨します.
    ただし、特定のtoString()フォーマットが指定されている場合、他の情報が必要な場合は対応するgetterまたは他のメソッドが必要です.再定義されたtoString()を使用する場合は、値をグループ化する必要があります.これにより、パフォーマンスが低下し、不要な操作が発生します.
    n/a.結論
    toString()は、デバッグ時のように開発時に使用することを推奨し、ユーザーに個別の方法を作成することを推奨します.
    追加20210304
    優雅な技術路線図タスクの第1段階のフィードバック
    質問とコメンテーターの回答

    Q.実際の操作でTOStringを使いすぎていませんか?
    A.記録の対象に対してのみ、IDEの自己相似性機能を利用して、記録したい値を上書きする.
    私の返事

    =>ログは、特別な場合にのみ使用される場合があります.
    リファレンス
  • JAvaの定番3版Chapter 09 java。langパッケージと有用なクラス
  • 効果java 3版単品12。常にtoStringを再定義する
  • Java APIドキュメント-オブジェクト