Подскажите почему такую запись
interface DBObject {
        DBObject initializeIdAndName(long id,String name); //DBObject получается здесь тип метода ? Как например String/int?
нельзя заменить вот такой :
interface DBObject {
       initializeIdAndName(); //без аргументов long id, String name и без типа метода
++ в классе User реализовал бы объявленный в интерфейсе метод вот так :
        public User initializeIdAndName(long id, String name) {
            this.id = id;
            this.name = name;
           return this;
и если не сложно
public User initializeIdAndName(long id, String name) {
    this.id = id;
    this.name = name;
    return this; //как здесь отрабатывает return this? p.s - ушел искать в комментах )