首页 技术 正文
技术 2022年11月9日
0 收藏 598 点赞 2,186 浏览 1538 个字

paip.消除 Java 的冗长try/catch/finally

作者Attilax 艾龙,  EMAIL:1466519819@qq.com

来源:attilax的专栏

地址:http://blog.csdn.net/attila

///////目前,java 冗长的try/catch/finally有以下方案

Lombok,但是,使用后,发现编译错误,放弃

String  $s = new tryX<String>() {

                @Override

                public String item(Object t) throws Exception {

                    // TODO Auto-generated method stub

                    return null;

                }

            

        

        

        }.$(“”);

        

        

//////////////自定义tryx实现.        

public abstract class tryX<T> {

    public T itemWrap(Object t) {

        try {

            return item(t);

        } catch (Exception e) {

            System.out.println(“—–catch except la ..”);

            log(e);

            return this.defaultReturnValue;

        }

    }

    public abstract T item(Object t) throws Exception;

    public T $(T string) {

        this.defaultReturnValue = string;

        return this.itemWrap(“”);

    }

    public Logger logger = Logger.getLogger(tryX.class.getName());

    public Object log(Exception e) {

        logger.error(god.getTrace(e));

        return e;

    }

    public T defaultReturnValue;

}

//////////Lombok?

对冗长的try/catch/finally的一次包

清单 6. 使用 @Cleanup 注释

public static void main(String[] args) throws IOException {

    @Cleanup InputStream in = new FileInputStream(args[0]);

    @Cleanup OutputStream out = new FileOutputStream(args[1]);

    //write file code goes here

}

上述代码较我们通常在标准 Java 代码内看到的整洁了很多。请注意您还是需要抛出由被调用代码捕获的异常(在本例中,为 IOException

WCF中的Dispose – 晴窗笔记 – 51CTO技术博客.htm

以简单的方式消除 Java 的冗长.htm

何为 Lombok?

Lombok 是一种 Java Archive (JAR) 文件,可用来消除 Java 代码的冗长。

我们看这样一个例子,一个标准的 Java be

java.lang.RuntimeException: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: FUNCTION homi.getDistance does not exist

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,110
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,584
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,431
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,202
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,837
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,920