title: Examples of "Strict Inheritance"
body: <p>I was reading about "Strict Inheritance" (<a href="https://jyx.jyu.fi/bitstream/handle/123456789/27203/9789513943523.pdf?sequence=1&amp;isAllowed=y" rel="nofollow noreferrer">link</a>). It said:</p>
  
  <blockquote>
    <p>Inheritance is called strict if descendants do not delete or modify (override) any inherited features, non-strict otherwise.</p>
  </blockquote>
  
  <p>Basically, if <code>A</code> and <code>B</code> are classes and <code>A</code> is the strict father of <code>B</code> then object of type <code>B</code> has the same behaviour as <code>A</code> with more features.</p>
  
  <p>I was wondering if there is a language that supports that idea. As far as I know, Smalltalk and Java does not support it. Are there languages that support that idea? I would be glad to see an example. If there are no languages that support this idea, what could be the reason for it (why Java does not support it)?</p>
  
  <p>I also read that C can imitate that idea due to its weak typing but I could not think of how to implement it.</p>