AutoCloseable接口

程序设计中所有的资源都是有访问上限的,超出上限可能无法继续连接,就需要你对所有资源进行释放

AutoCloseable是一个自动关闭的接口,到1.7才开始出现,里面只有一个close方法,但是他抛出了一个异常,所以你使用时会进行异常的处理,关闭操作才会正常进行

interface IMessage extends AutoCloseable{
    void send();
}
class Message implements IMessage{
    public Message() {
        System.out.println("连接");
    }

    @Override
    public void send() {
        System.out.println("发送");
    }

    @Override
    public void close() throws Exception {
        System.out.println("关闭");
    }
}
public class AutoCloseableDemo {
    public static void main(String[] args) {
        //如果这里没有进行异常的处理就不会自动调用close方法
        try(IMessage im=new Message()) {
            im.send();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
posted @ 2021-07-29 08:44  Yuriki  阅读(138)  评论(0编辑  收藏  举报