Pourquoi BufferedInputStream copie-t-il un champ dans une variable locale plutôt que d'utiliser le champ directement

Quand je lis le code source à partir de java.io.BufferedInputStream.getInIfOpen(), je ne comprends pas pourquoi il a écrit un code comme celui-ci: /** * Check to make sure that underlying input stream has not been * nulled out due to close; if not return it; */ private InputStream getInIfOpen()...