Java 9
Language updates
by Bahdan Siamionau
- Java backend-разработчик
- Один из организаторов JProf.by
bahdan.siamionau@gmail.com
@blazer2007
About me
Disclaimer
JSHELL
Наконец, у нас есть свой REPL
- /import, /help, /exit
- Автодополнение
- Внешние библиотеки
- Недоступный статический контекст
Тонкости
Project Coin
1. Private методы в интерфейсах
2. Final variables в try-with-resources
До Java 9
BufferedReader br = new BufferedReader(new FileReader(path));
try (br) {
return br.readLine();
}
Теперь
BufferedReader br = new BufferedReader(new FileReader(path));
try (BufferedReader omg = br) {
return omg.readLine();
}
3. Diamond operator для анонимных классов
До Java 9
Comparator<String> comparator = new Comparator<String>() {
@Override
public int compare(String o1, String o2) {
return o1.compareTo(o2);
}
};
Comparator<String> comparator = new Comparator<>() {
@Override
public int compare(String o1, String o2) {
return o1.compareTo(o2);
}
};
Теперь
4. _ больше не валидное имя переменной
Прощай, backward compatibility!
5. @SafeVarargs
Теперь и на private методах
Улучшенный
@Deprecated
+ тула jdeprscan
@Deprecated(since="1.4", forRemoval=true)
public class X500Principal implements Principal {
...
}
Обновления Javadoc
- HTML 5
- Поиск
Было
Стало
Подведем итоги
- JShell
- Project Coin
- 5 language changes
- @Deprecated
- Javadoc
Спасибо!
Java 9: Lang
By Bahdan Siamionau
Java 9: Lang
- 1,394