An object-based language is a
programming language
A programming language is a system of notation for writing computer programs.
Programming languages are described in terms of their Syntax (programming languages), syntax (form) and semantics (computer science), semantics (meaning), usually def ...
that provides a construct to encapsulate state and behavior as an
object. A language that also supports
inheritance
Inheritance is the practice of receiving private property, titles, debts, entitlements, privileges, rights, and obligations upon the death of an individual. The rules of inheritance differ among societies and have changed over time. Offi ...
or
subtyping is classified as
object-oriented. Even though object-oriented seems like a superset of object-based, they are used as mutually exclusive alternatives, rather than overlapping. Examples of strictly object-based languages supporting an object feature but not inheritance or subtyping are early versions of
Ada,
Visual Basic 6 (VB6), and
Fortran 90.
Some classify
prototype-based programming as object-based even though it supports inheritance and subtyping albeit not via a
class concept. Instead an object inherits its state and behavior from a ''template'' object. A commonly used language with prototype-based programming support is
JavaScript;
References
Programming paradigms
{{prog-lang-stub