Object Oriented features
- Definition
- Language structures implementing the object oriented programming (OOP) paradigm

Features
Encapsulation (Java
, C++
, Python
, Ruby
, C#
) Grouping data and related functions together and hiding implementation details.
Inheritance (Java
, C++
, Python
, Ruby
) Ability of one class to inherit fields and methods from another.
Polymorphism (Java
, C++
, C#
, Python
) Treating different types through a common interface.
Mixins / Traits (Scala
, Rust
, Ruby
, Elixir
) Reusable behavior that can be included in multiple classes or modules.
Interfaces / Abstract Classes (Java
, C#
, TypeScript
, Swift
) Contracts defining method signatures to be implemented.