do();
                  
                  
                  }
                  
                  
                  
                  
                  
                  public class IFoo implements Foo<BarBar> {
                  
                  
                      public Optional<BarBar> do() {
                  
                  
                          return Optional.of(new BarBar());
                  
                  
                      }
                  
                  
                  }
                  
                  
                  
                  
                  
                  ....
                  
                  
                      Foo foo = new IFoo();
                  
                  
                      Optional bar = foo.do();
                  
                  
                  ...
                  
                  
                  
                  
                  
                  Коллеги, напомните, почему теряется тип у Optional?
                  
                  
                
Потому, что ты не указал Optional<BarBar> bar = foo.do(); ???
Потому что Foo - raw type, и всё, что из него торчит - тоже raw type
Обсуждают сегодня