2010-12-09 2 views
0

Я работаю над проектом, где я реализовать распределенную файловую систему, поэтому для операций ввода/вывода, я думал об использовании NIO2 (JDK7)Могу ли я использовать Java NIO2?

JDK7 будет released in August в следующем году.

Мои вопросы:

  1. было бы хорошей идеей использовать NiO2 из снимка JDK7? С какими проблемами я могу столкнуться?
  2. Если я скомпилирую свой код, который использует классы JDK6 и JDK7, можно ли скомпилировать его с помощью JDK7?

ответ

5

1 - Было бы неплохо использовать NiO2 от снимка JDK7? С какими проблемами я могу столкнуться?

Для студента/исследовательского проекта я не вижу каких-либо серьезных проблем, кроме общих из них, как:

  • новых API-интерфейсов может еще быть в состоянии потока, и могут изменения без уведомление,
  • у вас больше шансов столкнуться с JDK/JRE/JVM ошибки и
  • люди, которые хотят попробовать ваш проект должен использовать JDK 7.

Для проекта, который должен быть выпущен до выпуск JDK 7, вы, вероятно, должны быть более осторожны.

2 - Если я скомпилирую свой код, который использует классы JDK6 и JDK7, можно ли скомпилировать его с помощью JDK7?

Вы не можете быть уверены, пока не попробуете, но я был бы очень удивлен, если бы ответ был чем-то иным, чем «да». Команда Java прекрасно понимает необходимость поддерживать обратную совместимость.

(Однако вряд ли вы сможете скомпилировать с помощью JDK 6 ... если только они не решат, что технически возможно и целесообразно предоставить backport для функции JDK 6. Для чего-то вроде NIO2, это может быть «нет» по обоим показателям.)