Re:My personal C coding style as of late 2023
by paulddraper on Monday October 09, 2023 @05:16PM
(#37825592)
No, there are two classes -- mutable and immutable -- that both implement the immutable interface.
[ Parent
| on HN ]
Re:My personal C coding style as of late 2023
by layer8 on Monday October 09, 2023 @06:09PM
(#37826097)
Yes, so three classes. I’m counting a Java interface as a class, because it is the same as a purely abstract class. In any case, three different named types.
As a side note, I would say the interface is unmodifiable, not immutable, because references of the interface type may refer to mutable instances that can mutate while you use it through the interface. Immutable = doesn’t change state, unmodifiable = you can’t change it’s state via that reference (but it might change it’s state due to other concurrent code holding a mutable reference). This nomenclature comes from the “unmodifiable” collection wrappers in Java, which don’t make the underlying object immutable.