Javaコンパイラの型判断
Javaのコンパイラは宣言された型情報のみを頼りにコンパイルを行う。 よって、A型にA型のサブクラスであるB型を代入するような場合でも、 メソッドの定義などはA型に定義されたものとして判断する。 もちろんオーバーライドに…
Javaのコンパイラは宣言された型情報のみを頼りにコンパイルを行う。 よって、A型にA型のサブクラスであるB型を代入するような場合でも、 メソッドの定義などはA型に定義されたものとして判断する。 もちろんオーバーライドに…
一般に、チェック例外、実行時例外の使い方の切り分けは、 回復可能な状態にはチェック例外、回復不能なプログラミングエラーには実行時例外といわれる。 例として実行時例外の代表的なものとして、配列の要素外アクセスを表すArra…
すべての例外はクラスThrowableのサブクラスである。 例外には、大きくわけて2つの種類がある。 ・チェックされる例外(RuntimeException及びそのサブクラスを除く、Exceptionのサブクラス) ・チ…
ガベージコレクション対象になる、すなわちオブジェクトがファイナライズ可能になるタイミングは、参照が到達できなくなったタイミング(厳密には弱く到達可能以下になったら)。 普通、nullになるか、スコープ外になるまでは参照可…
いまさらですが・・・ ・ポリモーフィズム 継承やインタフェースの実現を利用して、実際に動くインスタンスの型を隠すこと。 オーバーロードメソッドの定義なども含まれる。 ・カプセル化 関係の深いデータとそれらを使って行う処理…
パラメータとしてプリミティブ型を受け取るメソッドと、 ラッパークラスを受け取るメソッドをオーバーロードメソッドとして定義した場合、 プリミティブ型はプリミティブ型、ラッパークラスはラッパークラスの方を優先的に呼び出す。 …
http://d.hatena.ne.jp/j5ik2o/20110225/1298610671 適切にコンストラクトされたオブジェクトのfinal field を通して到達できる変数(例えばfinal field が参…
スレッド間で共有できるメモリを共有メモリ、またはヒープ・メモリと呼ぶ。 下記項目がヒープ・メモリに格納される。 ・インスタンスフィールド ・静的フィールド ・配列要素 一方、下記項目はスレッド間で共有されることはない。 …
http://www.hyuki.com/dp/dpinfo.html これと同じ名前がついているソースコードはこれらのパターンを適用している可能性が高い。 Nettyは多分futureパターン使ってる。
スレッド周りの資料を読んでたらモニターロックっていう用語が頻繁に出てくるが、 いまいち意味がわからなかったので調べてみた。 http://msugai.fc2web.com/java/thread/lock.html モ…
最近のコメント