finally節でのreturn
finallyで値をreturnするとtryの中でのreturnが上書きされるようだ。
普通finallyでreturnなんてしないけど、知らないと書いてしまう可能性があるかな。
public static void main(String[] args) { int j = hoge(); // j == 1になる } static int hoge() { try { return 0; } finally { return 1; } }
static void Main(string[] args) { int i = hoge(); } static int hoge() { try { return 0; } finally { return 1; } }