【Java】内部クラス内部クラスの詳しい話をする前に、既に内部クラスを持ったクラスを使用していることをArraysクラスやLinkedListクラスを例に説明しました。{});ArraysクラスにはArrayListというトップレベルクラスと同名の内部クラスが定義されており、これがasListメソッドの戻り値として返されています。興味のある方はご確認ください。【Java】ListとSetのcontainsメソッドの性能ListとSetにはcontainsと呼ばれる引数で指定したオブジェクトが存在するかを判定するためのメソッドがあります。入門書では詳しく解説されていませんが、データ件数が大きくなればなるほど検索速度に劇的な差が出ます。1から10億までに存在する乱数をListとSetに100万件格納し、1から10億までの乱数を発生させ、ナノ秒単位で計測してみてください。アルゴリズムを知らなくともこの差を体感してもらっています。コレクションクラスは使いどころを理解することが肝要です。JavaのSetはPythonほど高機能ではありませんが、ホワイトリスト・ブラックリストの実装には最適です。一般的にメソッドはprototypeにオブジェクトリテラル形式で登録するのがよいと言われています。考えると分かりますが、オブジェクトリテラル形式でprototypeに代入すると継承(プロトタイプチェーン)が切れてしまいます。継承したのちに、ドット演算子で追加した方が無難でしょう。BBB()のようにやれなくもないですが直接__proto__に代入するのは好ましくありません。JavaScriptの継承は意外と厄介ですね。