1 - Было бы неплохо использовать NIO2 из снимка JDK7?С какими проблемами я могу столкнуться?
Для студента / исследовательского проекта я не вижу серьезных проблем, кроме общих, таких как:
- новые API может все еще находятся в состоянии изменения, и может измениться без уведомления,
- вы более вероятно столкнетесь с ошибками JDK / JRE / JVM и
- людей,чтобы опробовать свой проект, необходимо использовать JDK 7.
Для проекта, который должен быть запущен в производство до фактической версии JDK 7, вам, вероятно, следует быть более осторожным.
2 - Если я скомпилирую свой код, который использует классы JDK6 и JDK7, возможно ли скомпилировать с использованием JDK7?
Вы не можете быть уверены, пока не попробуете, но я был бы очень удивлен, если бы ответом было что-то кроме «да».Команда Java прекрасно понимает необходимость обеспечения обратной совместимости.
(Однако вряд ли вы сможете компилировать с использованием JDK 6 ... если только они не решат, что это технически осуществимо и стоитпредоставить бэкпорт функции для JDK 6. Для чего-то вроде NIO2 это может быть «нет» в обоих случаях.)