Java

final const readonly

値を書き換えるつもりのない変数を宣言することがある。ローカル変数や関数の引数の場合もあれば、メンバ変数の場合もある。 Javaの場合、このような変数を宣言するときにはfinalと書いておくと、コンパイル時にチェックできる*1。 C++にもconstという似たも…

finallyの中でreturn

Javaのfinallyはよくできていて、tryやcatchの中から抜けるときは必ずfinallyが実行される。 tryの中身の最後のステートメントが実行される returnやcatchしてない例外でメソッドごと抜けようとする という場合にも、必ず実行される。 returnの場合には まず…

パラメータで受け取った型のインスタンスを生成

C++のTemplateとJavaのGenericsを比べるとき、 パラメータで受け取った型のインスタンスを生成できない という話が出てくることがある。 import java.util.Vector; class Elem { } public class Test { // しかるべき方法で初期化された、要素数nのVector<T>が</t>…