По коду видно, что при создании переменной NEO мы указываем ее тип, прописанным позже интерфейсом, это как? Что это нам дает, где можно об этом почитать? ( Строка №7)
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 String toString() {
return String.format("User has name %s, id = %d", name, id);
}
public User initializeIdAndName(long id, String name){
///// здесь указано решение, поэтому его нет......, дабы не нарушать правила сообщества ////////////////////////
}
}
}