https://github.com/singgel?tab=repositories
面向对象的编程语言本来就是很简单的,让人容易理解,最近在看java9新特性的时候看到了try-with-resources 。
try-with-resources 声明在 JDK 9 已得到改进。如果你已经有一个资源是 final 或等效于 final 变量,您可以在 try-with-resources 语句中使用该变量,而无需在 try-with-resources 语句中声明一个新变量。
此前在C#中使用的是using(){} ,主要是来处理数据库连接之后的关闭,防止数据库服务器的连接过多,connection不关闭可是非常占用内存的。以往是要在finally里面写:conn.close();
using (MySqlConnection conn = new MySqlConnection(connectionString))
{
PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
int val = cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
return val;
}
而在JAVA9的新特性里面,我看到,它使用try来代替using这个关键字,try里面的变量就是要进行处理的变量,使用完毕之后,编译器会自动的调用close方法或者dispose方法将其释放掉,使用者不必担心代码的安全性,避免疏忽大意导致的程序的BUG产生.以往是要在finally里面写:br.close();,不然就会报IOException
import java.io.BufferedReader;
import java.io.IOException;
import java.io.Reader;
import java.io.StringReader;
public class Tester {
public static void main(String[] args) throws IOException {
System.out.println(readData("test"));
}
static String readData(String message) throws IOException {
Reader inputString = new StringReader(message);
BufferedReader br = new BufferedReader(inputString);
try (BufferedReader br1 = br) {
return br1.readLine();
}
}
}