Co dzieje się podczas drukowania obiektu w Javie

class Data {
    int a = 5;
}

class Main {
    public static void main(String[] args) {
        int b=5;
        data dObj = new data();
        System.out.println(dObj);
        System.out.println(b);
    }
}

Chcę wiedzieć, co się dzieje podczas drukowania obiektu, liczby lub ciągu.

Uruchomiłem powyższy kod, otrzymuję wynik jako „data @ 1ae73783” dlaSystem.out.println(dObj); i „5” zaSystem.out.println(b);

Następnie przeprowadziłem debugowanie, aby sprawdzić, co naprawdę dzieje się podczas drukowania obiektu, w trybie debugowania było wiele parametrów (np. Classloader, theards)
Wiem, że dla pierwszego wydruku wartość reprezentuje nazwę klasy i adres. Ale nie wiem, co tak naprawdę dzieje się w trybie debugowania, dla drugiego drukowania tylko przypisanie zmiennej nastąpiło w trybie debugowania, tj. B = 5.

Proszę wyjaśnić, co naprawdę się dzieje?

questionAnswers(5)

yourAnswerToTheQuestion