package com.javarush.task.task13.task1320;

/*
Neo
*/

public class Solution {
    public static void main(String[] args) throws Exception {
        System.out.println(Matrix.NEO);
    }

    static class Matrix {
        public static DBObject NEO = new User().initializeIdAndName(1, "Neo");
    }

    interface DBObject {
        DBObject initializeIdAndName(long id, String name);
    }

    static class User implements DBObject {
        long id;
        String name;

        @Override
        public DBObject initializeIdAndName(long i, String name){
            this.id = i;      // как передалось значение так я его и передал (непонятно)???????????
            this.name = name;   // как передалось значение так я его и передал (непонятно)???????????
            User us = new User();
            us.toString();
            return this; // я так понимаю здесь хотят что бы поменял с DBObject на User ??????
                             // я не вижу ничего адекватного что я могу здесь вернуть.?????????????
        }

        @Override
        public String toString() {
            return String.format("The user's name is %s, id = %d", name, id);
        }
    }
}