Skip to content

Commit

Permalink
Update readme.md
Browse files Browse the repository at this point in the history
  • Loading branch information
HunorVadaszPerhat authored Apr 7, 2023
1 parent d3e02fc commit 08488d6
Showing 1 changed file with 20 additions and 6 deletions.
26 changes: 20 additions & 6 deletions sealed_class/readme.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,23 @@
## Sealed class
Subclasses of a sealed class must be modified by one of the following:

- final: No further subclasses are allowed.
![final]()
- sealed: A sealed set of subclasses is allowed.
- non-sealed: This is a new keyword that allows inheritance by unknown subclasses.
![non-sealed]()
A sealed class MUST permit at least one subclass
![sealed_class_must_contain_at_leat_one_subclass](https://github.com/HunorVadaszPerhat/java_lang_specs/blob/main/images/sealed_class_must_contain_subclass.png)

A subclasses must be either final, non-sealed or sealed
![sealed_class_rule_1](https://github.com/HunorVadaszPerhat/java_lang_specs/blob/main/images/sealed_class_rules_1.png)

- a subclass as non-sealed
![sealed_class_rule_2](https://github.com/HunorVadaszPerhat/java_lang_specs/blob/main/images/sealed_class_rule_2.png)
- a subclass as final
![sealed_class_rule_3](https://github.com/HunorVadaszPerhat/java_lang_specs/blob/main/images/sealed_class_rule_3.png)
- a subclass as sealed must have subclasses
![sealed_class_rule_4](https://github.com/HunorVadaszPerhat/java_lang_specs/blob/main/images/sealed_class_rule_4.png)
- if subclass is non-sealed
![sealed_class_rule_5](https://github.com/HunorVadaszPerhat/java_lang_specs/blob/main/images/sealed_class_rule_5.png)
- if subclass is final
![sealed_class_rule_6](https://github.com/HunorVadaszPerhat/java_lang_specs/blob/main/images/sealed_class_rule_6.png)





0 comments on commit 08488d6

Please sign in to comment.