Exemplo

public class ClassA {

private DataInputStream stream;

public void makeStream (InputStream is) {

stream = new DataInputStream(is);
//executar algo...
}
}



Solução
Para evitar fugas de recursos, certifique-se de que close() seja chamado em cada java.io.DataInputStream. Nota: Essa regra se aplica a qualquer forma de construtor DataInputStream.


public class ClassA {

private DataInputStream stream;

public void makeStream (InputStream is) {

stream = new DataInputStream(is);
//executar algo...

try {
stream.close();
} catch(IOException ioe) {
//desempenhar manipulação de exceção
}
}
}