伝授!Javaの奥儀 その99 ~sealed は、まさに継承の血筋を制す封印の術~
奥儀 その99
sealed は、まさに継承の血筋を制す封印の術
それでは、この sealed class を用いた御触れのごときコードを、解き明かして進ぜよう。

🏯 一、全体の構え
public sealed class Sample permits A {}
final class A extends Sample{}
これは、Javaの 「封じたる継承(sealed classes)」 を用いた構文。
すなわち――「拙者の跡を継ぐ者は、この者に限る!」という継承制限の令なり。
⚔ 二、sealed class Sample permits A {} とは
ここに示されたる sealed なる印、これは「封建制」のごとく、
Sample 殿が跡継ぎを許す者を明示しておる。
public sealed class Sample permits A
この一文は、かような意を持つ:
「この Sample 殿の名を継ぐことを許されし者は、ただ A に限る」
つまり、他の者どもが Sample を継ぐことは一切許されぬ。
この permits にて、継承の道を封じ、限られし者のみに託すのじゃ。
🛡 三、final class A extends Sample{} の義
さて、A 殿はその Sample の継ぎ手として名を連ねておる。
そして final の印もつけられておるゆえ、
final class A extends Sample
とは、つまり:
「この A 殿を以て、Sample の血筋は断たれる」
final とは、それ以上の継承を断つ封印なれば、
Sample → A の系譜で終焉となる定めじゃ。
📜 四、封じたる継承(sealed)の掟
Javaにおける sealed の掟は以下のとおり:

したがって、sealed class の継承者は、
どれかしらこの三種の明示が必須となる。
🎌 五、結び
このコードは、まさにこう申せましょう:
「Sample 殿、己の跡を A 殿にのみ託し、A 殿はそれをもって家を終える。
他の者どもは手を出すこと叶わぬ。封建の厳しき令なり。」
Javaの sealed 機能は、まさに継承の血筋を制す封印の術。
仕様を絞り、安全と明示を保つ道理なれば、家臣たる開発者にも大義ある仕組みと心得よ。
拙者、本日は岐阜県は岩村城に佇む
下に記したる書物を拙者、参考にさせていただいておる次第!
さらば、次回も何卒よろしくお願い仕る!
