effective-java

    12

    4答えて

    私は今まで読んできた実効Javaジョシュア・ブロッホそしてこれまでのところ、それは本当にその評判に暮らしています。最初の項目は、静的ファクトリメソッドコンストラクタの説得力のあるケースです。私は良い古いコンストラクタの妥当性について疑問を持ち始めました:)本から 長所/短所を以下にまとめる: 利点: 彼らは名前を持っています! 我々有する合計それらはサブタイプ/インターフェースを返すことができ イ

    9

    3答えて

    : オブジェクトのcloneメソッドは非常にトリッキーです。フィールドコピーに基づいており、 は「超言語」です。 コンストラクタを呼び出さずにオブジェクトを作成します。コンストラクタによって確立された不変量を保持する保証はありません。 年には、 を オブジェクトをクローンするまでsuper.cloneを繰り返し呼び出すだけで、オブジェクトの浅いコピーが作成されるという事実から、多くのバグがSunの

    8

    3答えて

    「効果的なJava」で説明したように、「インターフェイスでオブジェクトを参照する」は良い方法です。 だからたとえば、私は私のコードで List<String> al = new ArrayList<String>(); ArrayList<String> al = new ArrayList<String>(); 上好みます。 1つの厄介なことは、私が ArrayList<String>

    5

    1答えて

    私はEffective Javaを研究しています。アイテム8(equalsをオーバーライドするときは一般契約に従います)。それは著者によって非常にはっきりと説明されていますが、まだまだ精緻ではありません。この例では は、彼のように定義されたクラスのCaseInsensitiveString考慮:記事の最後に public final class CaseInsensitiveString {

    20

    4答えて

    「有効なJava」のシリアライズの章を読んでいます。私は本の下の段落を理解しようとしています。 シリアル化可能なインスタンスフィールドを持つクラスを実装する場合は、注意する必要があります。 もしクラス は、そのインスタンスフィールド がデフォルト値に初期化さ (整数型のためのゼロ、ブールのため 偽、およびオブジェクト参照型の場合はnull)であれば、あなた このreadObjectNoDataメソ

    5

    3答えて

    だから私はいくつかを読んできた実効Java!本書の最も魅力的なセクションの1つは、不変オブジェクト/ビルダーのセクションです。ここで、BlochはPOJOの代わりに「Builder」クラスについて書いています。 注:私はモデルについて話していますが、ここでオブジェクト:インスタンスの条またはカーのように。 これは私が前に、これらのオブジェクトを書いた方法です:あなたはこの設計は、いくつかの方法が不

    2

    4答えて

    私はEffective Javaを読んでいて、この本はクローンメソッドについて以下のコメントを持っています。実際に 、Cloneableを実装し クラスが適切に機能して 公共クローン方法を提供することが期待されます。 すべてのクラスのスーパークラスが、正常に動作するクローンの実装を提供しない限り、 publicかprotectedかにかかわらず、一般的にそうすることはできません。 誰にもこれを行う

    6

    3答えて

    の一部を理解しようとしています。ITEM 40:設計メソッドのシグニチャをEffective Java 2nd Editionから慎重に理解してください。 メソッド署名の可読性を向上させるために提案されていることの1つは、4つ以下のパラメータを目指すことです。より長いパラメータリストは以下の通りであるそのうちの一つの様々な技術を使用して管理することが示唆されている: 最初の二つの側面を組み合わせた

    9

    1答えて

    、項目17: 各パブリックまたは保護されたメソッドまたはコンストラクタについては、ドキュメント はメソッドまたはコンストラクタ 後で同じで を呼び出すオーバーライドされた方法を示さなければなりません項目: コンストラクターは、オーバーライド可能なメソッドを直接的または間接的に呼び出さないでください。 これらの2つのステートメントは矛盾していないのですか、何か不足していますか?