Ti ringrazio.
Quindi nel caso di apertura risorse devo usare la seguente logica?

codice:
package mypackage.begin;

import java.io.*;
import java.util.*;

public class ExceptionClass3 
    {
    public void myMethod3() throws Exception
        {
    	BufferedReader in = null;    	
    	try
    	    {
            List<String> lines = new ArrayList<String>();
            in = new BufferedReader(new FileReader("C:/my-file.txt"));            
            String str;
            while ((str = in.readLine())!=null) lines.add(str);
    	    }
    	
    	catch(Exception e) 
    	    {
    	    // Rilancio l'eccezione (che verrà gestita dal chiamante).
    	    throw new Exception();    		
    	    }
    	
    	finally
    	    {
            if (in!=null) in.close();            
            }
        }
    }
E' ciò che si fa comunemente? E' una best practice?
Grazie.