tags:

views:

146

answers:

5

From an OOP point of view is there any difference between a derived class and an inherited class? Or is it simply terminology?

+4  A: 

When using inheritance, the inherited class is called the base class, and the inheriting class is called the derived class.

HappyCoder
Completely changing te text of your answer to mirror another user's answer is not considered good form here on SO.
anon
@Neil: On the contrary. Editing your answer to make it the best possible answer is what SO is all about. Of course that plagiarizing is not nice, but I find the edit an improvement based on your answer, not a blatant copy, especially since your answer was C++ specific (there was no need to make it specific, but you did.)
Vinko Vrsalovic
@Vinko There was a need need to make it specific - different languages use different nomenclatures. For example, a Smalltalk programmer would talk about superclass and subclass rather than base and derived.
anon
@Neil: Well then, if you think so you now have an opportunity to improve your answer and make it better than the answer based on your own.
Vinko Vrsalovic
BTW, given the question, I don't think there is a need to be language specific. The question is about inherited and derived and, while some languages might out front not use those terms at all, I doubt there is any language where the terms are used and represent different things. In case such language existed, that would be a worthy addition to an answer.
Vinko Vrsalovic
I changed my answer because I realized I was wrong when I was googling a bit just to make sure I wrote a correct answer.
HappyCoder
+3  A: 

The term derived class is preferred C++ parlance for a class that inherits from another class, which in C++ parlance is called a base class. So in C++ the terms you ask about are identical.

anon
+1  A: 

Neil's answer confused me a bit, and so I checked some public sources.

Consider a Base Class and a Sub Class (SubClass extends BaseClass in Java terminology), than

  • the Sub Class derives Base Class (Sub Class is a derived class of Base Class) and
  • the Sub Class inherits from Base Class (Base Class is a/the inherited class of Sub Class)

So in my opinion both terms define the same relationship between to classes but from different perspectives.

Andreas_D
The term subclass isn't commonly used in C++ - I don't know about Java - and the OP didn't ask about it.
anon
But he didn't ask for C++ neither...
Andreas_D
+1  A: 
Sergey Teplyakov
A: 

maybe interesting, if you override a method, in Delphi you write:

inherited; // so "inherited" is the base class

instead of

base.BaseImplementation(); // C#
Carsten