Serviceを読んで理解し、同意したものとみなします。スタック・オーバーフローはプログラマーとプログラミングに熱心な人のためのQ&Aサイトです。}}基底クラスが保持している値を派生クラスのインスタンスにコピーする簡潔な記述方法はあるでしょうか。上記のコードのように基底クラスに多くのプロパティ(またはフィールド)がある場合、単純にコピーロジックを書くと長くなってしまうので、もっと簡潔に書ける方法はないかと思い、質問しました。票3条件さえ合えば以下のような方法もあります。シリアライズして復元Aがシリアライズ可能であれば、シリアライズ化して復元する方法が使えます。}}クラスAのメソッドを拡張メソッドを追加するだけであれば、クラスBの必要はなく、拡張メソッドで対応可能です。残念ながら設計が悪いとしか言いようがありません。類似の目的を持つプロパティが多数並ぶのであれば、それらは配列やDictionary、その他適切なデータ構造で表現されるべきです。単純にコピーロジックを書くと長くなってしまう設計が悪い以上、設計を見直すか冗長なコードを容認するほかないでしょう。そもそもBはAを継承する意義があるのかも疑問です。22:57「継承しているのになぜコピーする?」という点が気になりました。そのような制約はあらかじめ質問文に明記していただきたいです。そのような制約があるのなら、なおさら冗長なコードを受け入れるほかないと思います。存在するわけで、「継承しているのにコピーするのはなぜ?」というのはオイラも当然そう疑問に思います。機能を実装すると変数や関数が2重に存在してしまうので「継承する」のメリットを全く一切生かせていません。原則にも反していて、オイラなら元の要求を蹴っちゃうでしょう。必要なのであれば、それは派生でなくて包含であるべきであろう、は既に回答されてますよね。元の要求がおかしいときそれを拒絶できないとしたら、開発体制に何か問題があるのかもしれません。それでもあえて再実装する必然があるのであれば、既についている別回答で。いうところのコピーコンストラクタ。コピーコンストラクタはない)だって別オブジェクト(別インスタンス)なんだからコピーしなきゃ「別」にならないもん。その手段としてちまちま手書きするか、シリアライズするかはお好きな方法で。a;}のように、コピーせず参照を持つだけに留める、でしょうか。この場合「派生」させるわけにはいかないので設計変更っす。