urlConnection.getInputStream()有必要主动Close吗?

有兄弟看到这个问题的麻烦解答一下呀,我的问题写在代码的注释里了,谢谢!


String url = "";
        URLConnection urlConnection = new URL(url).openConnection();
        InputStream in = urlConnection.getInputStream();
        BufferedInputStream bin = new BufferedInputStream(in);
        FileOutputStream out = new FileOutputStream("");
        int len;
        byte[] b = new byte[1024];
        while ((len=bin.read(b))!= -1){
            out.write(b,0,len);
        }
        // 因为FileOutputStream是我本机的资源,所以我肯定会主动close掉
        out.flush();
        out.close();

        // 按道理说对方服务器的输出流会主动close,那么我的InputStream是不是会被动关闭掉并且释放资源呢?
        // 换句话说,我有必要主动关闭这个InputStream吗,如果不主动关闭会产生什么影响吗?
        // in.close();

当然有必要了,这个流是在你这边创建的实例。
服务器也关闭不了你的流对象实例。
不关闭就会占用资源。

系统会自动关闭,但不及时,系统认为能关闭的时候才关闭。

流是很珍贵的资源,及时关闭!

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632