ひびのログ

日々ではないけどログを出力していくブログ

Java

is-a 関係は「イズ-ア」であって「イズ-エー」ではない!

オブジェクト指向を学ぶ上で、絶対とは言い切れないけどそこそこの確率で出てくる「is-a 関係」という単語。 これの読み方はタイトルの通り「イズ-ア」ですよ、というお話。 弊社の新人研修でも勘違いして教えている人がいたので、しっかりと正していきたい…

Java9 で追加されたList.of()と、以前から存在する Arrays.asList()の違い

検証PCのスペック OS: Windows 7 64bit Professional CPU: Intel Core i5-3470 3.20GHz メモリ: 8.00GB Javadocの定義 まずは Javadoc を確認。 Arrays.asList() Java9 Arrays Javadoc 修飾子と型 メソッド 説明 static <T> List<T> asList(T... a) 指定された配列</t></t>…

Java10 が発表されたので Java8 から乗り換えてみる

基本的に、「コードを書く」という視点で新機能を試します。 使用しているのは OpenJDK10 です。 主な新機能一覧 Java9 の新機能を試してみる JShell 特徴 使いどころ 不変コレクションのファクトリメソッド Java8 では…… Java9 からは…… 匿名クラスでのダイ…

Java のインスタンスから static メソッド・フィールドを呼び出したらどうなるのか?

ちょっと気になったので試したメモ。 結論 呼び出せる。コンパイル通る。警告すら出ない。 検証内容 環境 Windows 7 64bit(コマンドプロンプトにてコンパイル・実行) Java9 ソース // Main.java class Main { public static void main(String[] args) { Te…

Javaのpublicクラス名・メソッド名をgrepするための正規表現

先日作ったので、メモとして書いておきます。 後方参照で取り出せます。 正確さは保証しません。 あと、コンストラクタは取れません(後ろの方の\w+\s+を抜けば取れると思います)。 ^\s*(?=(?:static|synchronized|final|\s)*public\s)(?:(?:public|static|…