CodeGym
学習
コース
課題
アンケート & クイズ
ゲーム
ヘルプ
スケジュール
コミュニティ
ユーザー
フォーラム
チャット
記事
成功事例
アクティビティ
レビュー
サブスクリプション
ライトテーマ

レッスン

  • レビュー
  • 私たちについて
開始
学習開始
今すぐ学習を始める
  • 学習の進捗
  • コース
  • クエストマップ
  • レッスン
  • シリアライズ処理の制御: writeObject, readObject

    JAVA 25 SELF
    レベル 43,レッスン 0
    標準のシリアライズをフックして処理を制御する方法: 厳密なシグネチャを持つ private メソッド writeObject/ readObject( private void writeObject( ObjectOutputStream out) throws IOException)を使い、 defaultWriteObject()/ defaultReadObject() を呼び出し、 transient でフィールドを除外し、チェックサムとログを追加し、 serialVersionUID とバージョン互換性も忘れない。よくあるミス、 ObjectOutputStream/ ObjectInputStream の扱い、実践的な例を解説する。
    利用可能
  • transient フィールド、serialVersionUID

    JAVA 25 SELF
    レベル 43,レッスン 1
    Java におけるシリアライズ実践ガイド: フィールドをストリームから除外するためにいつ・どのように transient を使うか、デシリアライズ時に何が起きるか(デフォルト値)、メソッド readObject で状態をどう復元するか。 serialVersionUID とは何か、その宣言方法( private static final long serialVersionUID = 1L)、いつ変更すべきか、そして明示的に指定するのがなぜ良いか。実用的なサンプル、リスキーなシナリオ、典型的なミスを示します。
    利用可能
  • Externalizable: シリアライゼーションのきめ細かな調整

    JAVA 25 SELF
    レベル 43,レッスン 2
    Java の基本的なシリアライゼーションを拡張する: 自動の Serializable だけでは足りないときに、手動の契約である Externalizable が、 writeExternal/ readExternal メソッドとともに役立ちます。講義では、データ形式を完全にコントロールする方法、ファイルサイズを小さくする方法、後方互換性の維持方法を解説し、 ObjectOutputStream/ ObjectInputStream と比較、例や長所/短所、典型的なミス(必須の public 引数なしコンストラクタ、書き込み/読み取りの順序など)を示します。
    利用可能
  • シリアライズの挙動を調整: カスタムメソッド

    JAVA 25 SELF
    レベル 43,レッスン 3
    この講義では、Java のシリアライズ/デシリアライズの過程にメソッド writeReplace と readResolve を使ってどう介入するかを解説します。なぜオブジェクトをプロキシに差し替えるのか、シングルトンをどう保つのか、イミュータブルなオブジェクトをどう扱うのか、そしてそれが writeObject/ readObject とどう関係するのか。ステップバイステップの演習、処理フローの Mermaid 図、そして典型的なミスの解説を含みます。
    利用可能
  • シリアライゼーションのセキュリティ: ベストプラクティス

    JAVA 25 SELF
    レベル 43,レッスン 4
    Java における安全なシリアライゼーションの実践ガイド。信用できないソースからのデシリアライズがなぜ危険か、どのように ObjectInputFilter、キーワード transient、明示的な serialVersionUID、 instanceof による型検証、そして代替の交換フォーマット(JSON/Proto)で防御するかを解説します。実例コード、許可クラスのフィルタリング、典型的な誤りの解説も含みます。
    利用可能
学ぶ
  • 登録
  • Javaコース
  • 課題のサポート
  • 料金
  • ゲームプロジェクト
  • Java構文
コミュニティ
  • ユーザー
  • 記事
  • フォーラム
  • チャット
  • 成功事例
  • アクティビティ
  • アフィリエイトプログラム
会社情報
  • 私たちについて
  • 連絡先
  • レビュー
  • プレスルーム
  • CodeGym for EDU
  • よくある質問
  • サポート
CodeGymCodeGym は、ゼロからJavaプログラミングを学ぶためのオンラインコースです。このコースは初心者がJavaを習得するのに最適です。即時検証付きの1200以上の課題と、Java基礎理論の必要な範囲を含みます。学習の成功を支援するために、クイズ、コーディングプロジェクト、効率的な学習に関するコンテンツ、Java開発者のキャリアに関する機能など、一連のモチベーション機能を導入しています。
フォローする
インターフェース言語
English Deutsch Español हिन्दी Français Português Polski বাংলা 简体中文 मराठी தமிழ் Italiano Bahasa Indonesia 繁體中文 Nederlands
日本語
한국어 Bulgarian Danish Hungarian Basa Jawa Malay Norwegian Romanian Swedish Telugu Thai Українська Filipino Turkish Azərbaycan Русский Vietnamese
「プログラマーは生まれるのではなく、育てられる」 © 2026 CodeGym
MastercardVisa
「プログラマーは生まれるのではなく、育てられる」 © 2026 CodeGym